home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1993 July / InfoMagic USENET CD-ROM July 1993.ISO / sources / unix / volume24 / psroff3.0 / part12 < prev    next >
Encoding:
Internet Message Format  |  1991-10-09  |  55.8 KB

  1. Subject:  v24i107:  psroff, Troff to PostScript filter, Part12/19
  2. Newsgroups: comp.sources.unix
  3. Approved: rsalz@uunet.UU.NET
  4.  
  5. Submitted-by: Chris Lewis <clewis@ferret.ocunix.on.ca>
  6. Posting-number: Volume 24, Issue 107
  7. Archive-name: psroff3.o/part12
  8.  
  9. #! /bin/sh
  10. # This is a shell archive.  Remove anything before this line, then feed it
  11. # into a shell via "sh file" or similar.  To overwrite existing files,
  12. # type "sh file -c".
  13. # The tool that generated this appeared in the comp.sources.unix newsgroup;
  14. # send mail to comp-sources-unix@uunet.uu.net if you want that tool.
  15. # Contents:  LASERFONTS fonts.lj/S.11.pk.UU fonts.lj/S.14.pk.UU
  16. #   man/cat.5.S utils/dumpft.c utils/fonts/cmbx10.pk.UU
  17. #   utils/fonts/cmr10.pk.UU
  18. # Wrapped by clewis@ecicrl on Fri Apr  5 20:56:02 1991
  19. PATH=/bin:/usr/bin:/usr/ucb ; export PATH
  20. echo If this archive is complete, you will see the following message:
  21. echo '          "shar: End of archive 12 (of 19)."'
  22. if test -f 'LASERFONTS' -a "${1}" != "-c" ; then 
  23.   echo shar: Will not clobber existing file \"'LASERFONTS'\"
  24. else
  25.   echo shar: Extracting \"'LASERFONTS'\" \(7816 characters\)
  26.   sed "s/^X//" >'LASERFONTS' <<'END_OF_FILE'
  27. X    How to build Fonts and Width Tables for your Laserjet
  28. X            2.3 91/04/02
  29. X
  30. XThis readme presents a general discussion on how to build fonts
  31. Xfor psroff.  The first part gives a complete description of what
  32. Xneeds to be done/how it's done, and you can skip to the second
  33. Xpart "AUTOMATING THE WHOLE DURN THING" if you want to use my facilities
  34. Xfor doing all this stuff without really needing to understand what's
  35. Xhappening.  This document does NOT directly apply to use with a Laserjet
  36. XIII, because the built-in fonts are used.
  37. X
  38. XPsroff has been designed to work with HP SFP or TeX PK format files.
  39. XMost fonts are called "normal" (Eg: R, I, B, etc.) which means that
  40. Xthey have ROMAN8 encodings.  Thus, HP SFP ROMAN8 SFP fonts can be
  41. Xused as-is for psroff normal fonts (aside from copying them from
  42. Xfloppy, giving them the right names, building width tables).
  43. XOn the other hand, the troff "S" font is a special font that I
  44. Xsupply which has (nominally) MATH8 encodings.
  45. X
  46. XIf you can obtain HP fonts, either as soft fonts on floppy or the
  47. XLaserjet III scalable fonts plus PC program to scale them to given
  48. Xsize, you just generate the fonts you want at the CAT troff sizes
  49. Xand then copy them to FONTDIR/lib/lj, fix lj.fonts and do a
  50. X"make register" and "make installwidths"
  51. X
  52. XKnuth's TeX PK fonts cannot be used "out-of-the-box" because the
  53. Xcharacter encodings are different, and the characters that psroff
  54. Xneeds are scattered across many different fonts.
  55. X
  56. XDo not despair, all is not lost - you can run psroff *purely* with
  57. XTeX fonts, with the help of a little pk2* magic.  The supplied
  58. XS font is an example of the result of this, and the S fonts contain
  59. Xa few characters you'll need if you wish to build your own fonts.
  60. X
  61. XIn the subdirectory utils, there are several important tools:
  62. X
  63. X    1) pk2sfp - which converts PK's and SFP's into SFP's,
  64. X       merging multiple ones and possibly with encoding changes.
  65. X    2) pk2ditwid - which reads a font file and generates
  66. X       font width information.
  67. X    3) maps/* - encoding files for converting from PK encoding
  68. X       to ROMAN8/MATH8 encodings.
  69. X    4) fonts/* - sample fonts.
  70. X
  71. X(The following discussion assumes that you've built and installed
  72. Xpsroff).
  73. X
  74. XFirst, examine utils/Makefile entry "buildcmtrf".  If you run this,
  75. Xthe Makefile will create several cmtrf*.sfp files under the fonts
  76. Xsubdirectory.  These cmtrf files are a subset of Rick Richardson's
  77. X"cmtrf" font which contains characters not in TeX's PK files that you
  78. Xwill need to build fonts for psroff.  Rick has graciously permitted
  79. Xdistribution of the cmtrf font with psroff, and I've placed the characters
  80. Xin the distributed S font.  Buildcmtrf uses the "-m" option of pk2sfp
  81. X(see the manual page) to extract characters named in maps/S.cmtrf
  82. X("S-font-to-CMTRF") and produce cmtrf<pointsize>.sfp files.
  83. X
  84. XNext, examine utils/Makefile entry "testmerge".  What this does is
  85. Xrun "pk2sfp -m" to generate several different fonts at the 10 point
  86. Xsize.  "testmerge" also invokes sfp2pk (if you have it - it comes
  87. Xwith Rick's jetroff package) to convert the resultant SFP to PK format.
  88. XEach font created by testmerge is a combination of several different
  89. XPK fonts.  The invocations of "pk2sfp -m" consist of something like:
  90. X
  91. X    pk2sfp -m <mapfile> <fontfile> <mapfile> <fontfile>....
  92. X
  93. XWhere each map file contains a description of what character in the
  94. Xfollowing fontfile is needed and what encoding should be used.  The
  95. Xnaming convention of these map files is:
  96. X
  97. X    <from>.<to>
  98. X
  99. XWhere "from" is usually a PK font name (eg: "cmtrf") and "to" is usually
  100. Xeither ROMAN8 (for normal fonts) or MATH8 (for symbol fonts).
  101. X
  102. XThis is how the 10 point R font was built:
  103. X    ./pk2sfp -m -v \
  104. X        maps/cmr.ROMAN8 \
  105. X        fonts/cmr10.pk \
  106. X        maps/cmsy.ROMAN8 \
  107. X        fonts/cmsy10.pk \
  108. X        maps/cmtrf.ROMAN8 \
  109. X        fonts/cmtrf10.sfp \
  110. X        maps/cmti.ROMAN8 \
  111. X        fonts/cmti10.pk \
  112. X        > fonts/R.10.sfp 2> fonts/R.10.LOG
  113. X
  114. XA combination of cmr, cmsy, cmtrf, cmti.
  115. X
  116. XNOTE: psroff will work equally well with SFP's and PK's.  There is
  117. Xa substantial space advantage to converting SFP's to PK's (if you have
  118. Xsfp2pk), but it is *not* necessary.  Further, you can always compress
  119. Xyour SFP's in place, and psroff will automatically invoke compress
  120. Xwhen it needs to read them.  It's only important that you get the
  121. Xnaming convention correct (<troffname>.<pointsize>.<pk|sfp>) and
  122. Xthe lj.fonts file set correctly.
  123. X
  124. XSo, the testmerge entry of the utils/Makefile creates R, I, B, C, S,
  125. XH, etc fonts at 10 points.  Only 10 points.  You could operate
  126. Xwith these only - but you'd only have one size.  Yuck.  (I distribute
  127. XR, I, and B only at 10 points so that you can see that psroff actually
  128. Xworks and not get discouraged before trying to obtain more fonts).
  129. X
  130. XThis is where it gets interesting.  TeX fonts usually come (as in the
  131. XU of T distribution) in the following naming format:
  132. X
  133. X    <TeX Name><designsize>.<resolution>pk
  134. X
  135. XEg: cmr10.329pk.  What this means that if the characters were printed
  136. Xon a device with a resolution of 329 dots/inch, the characters would
  137. Xbe 10 points high.  However, the Laserjet is 300 DPI, right?  If you
  138. Xwere to print the font at 300 DPI, the characters would appear to
  139. Xbe (329/300 * 10) points = 10.996... points (11 with a small error),
  140. Xwouldn't they?  Thus, you could use cmr10.329pk to generate a 11 point
  141. Xfont.
  142. X
  143. X[NOTE: if the resolution is omitted, it is assumed to be 300 DPI -
  144. Xas in the utils/fonts subdirectory]
  145. X
  146. XBy finding cmti and cmsy (cmtrf11.sfp was built by buildcmtrf
  147. Xremember?) in the same fashion where the design size and DPI are *close*
  148. Xto 11, you can build the R font at 11 points simply by substituting
  149. Xthe "fonts/*" names in the pk2sfp -m command line with the appropriate
  150. Xfont names (the map files don't change).  Thus, you can build R, I, B
  151. Xin several different point sizes.  Note: sometimes you can't find
  152. Xa TeX font with a DPI/pointsize close enough to the desired point size.
  153. XThe S fonts were built with a maximum error of approximately 7%.
  154. X
  155. XAUTOMATING THE WHOLE DURN THING:
  156. X
  157. XThere is a perl script in utils called "calcfonts", which if invoked
  158. Xin the top level make via:
  159. X
  160. X    make buildljfonts
  161. X
  162. XWill traverse every directory you've specified for PKFONTS during
  163. Xconfiguration of the top-level-makefile, select the best fit for
  164. Xeach font size, and build as many psroff font files as it can, placing
  165. Xeach font in $NEWFONTS.  Preferably you should have a sfp2pk utility
  166. X(so that the fonts can be created as pk's - specify in the Makefile),
  167. Xbut if you don't SFP's will be generated.  $NEWFONTS/lj.fonts.new
  168. Xwill contain some new replacement entries for your lj.fonts file (make
  169. Xsure that the order is R, I, B and S).
  170. X
  171. XAfter running buildljfonts, issue:
  172. X
  173. X    su root
  174. X    make installljfonts
  175. X    ^D
  176. X    make register
  177. X    su root
  178. X    make installwidths
  179. X
  180. XThe first make will install all of the new laserjet fonts in utils/newfonts.
  181. XThe second builds the width tables all over again, and the third reinstalls
  182. Xthe width tables.
  183. X
  184. Xcalcfonts can be user-modified to emit more fonts.  Near the end there
  185. Xare "do gen" invocations, eg:
  186. X
  187. X    do gen("troffname", "English name", "HPLJ escape sequence", "set",
  188. X    "pkname", "pkname", ....);
  189. X
  190. XTroffname is the name that the font will be known by to psroff/troff.
  191. XEnglish name and HPLJ escape sequence are for the lj.fonts file.
  192. XEach "pkname" is the name of a PK format file used to generate part of
  193. Xthe font, and will be MERGED with the map file called "pkname.set".
  194. X"set" should always be ROMAN8 (except for building S fonts when it
  195. Xshould be MATH8).  If the pkname contains a slash (eg: cmr/foo), it
  196. Xmeans merge cmr PK's using the second token as the map name.  Eg:
  197. X"cmr/foo" means merge cmr's using "foo.set".  The escape sequence is
  198. Xonly used if you've selected a point size which is marked "b" (builtin),
  199. Xor is marked "n" (non-existent), and the bestmatch code in lj.c didn't
  200. Xfind an existing font (same typeface) at a "close enough" pointsize.
  201. END_OF_FILE
  202.   if test 7816 -ne `wc -c <'LASERFONTS'`; then
  203.     echo shar: \"'LASERFONTS'\" unpacked with wrong size!
  204.   fi
  205.   # end of 'LASERFONTS'
  206. fi
  207. if test -f 'fonts.lj/S.11.pk.UU' -a "${1}" != "-c" ; then 
  208.   echo shar: Will not clobber existing file \"'fonts.lj/S.11.pk.UU'\"
  209. else
  210.   echo shar: Extracting \"'fonts.lj/S.11.pk.UU'\" \(6107 characters\)
  211.   sed "s/^X//" >'fonts.lj/S.11.pk.UU' <<'END_OF_FILE'
  212. Xtable
  213. X !"#$%&'()*+,-./0123456789:;<=>?
  214. X@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
  215. Xbegin 644 fonts.lj/S.11.pk
  216. XM]UD``+``````````!":N``0FKK!+(0```",B+?XAU1U"_3+3\M/B+3\M/RT_
  217. XM+3\M/RT_+3+#+#+"/#+!3"+!$4P2LB3`+%2RQ4HL=)+'](+)]&++]$+-XD(L
  218. XM_VT?33\L@,!*)````"TF%/T39=-:JY<S:2@5)U<J$RE5+!(;4RT!(<42T1'Q
  219. XMT6TRTETRTUTB_3;1$1T2%<$AT"-;$APE62,:)U<E&"EC-YNJ735@H!TE````
  220. XM(QT<_1BS&_];Q[SUOQ"1WPD1O_6\>\];\;/`0"8````C'!3]$U711(HV%4@G
  221. XMG&C0H&D(H*S(9'061T$H=$Z'2.1TD@=%8'1$C@<(D<;)#@9)C<G*$8S.F
  222. XM5=%`R#<J````(Q88^A8M5=,Q/1,SPU.C<X.2@J-CLT/0,CTFU/34;2,CT#0[
  223. XM-CHH*3@W.C4\,ST3$]-=4J@)+0```",:`OP+V<`N/````",:&OP7VCV$UTUT
  224. XMUTUTV#V#V$UTUTUTU_3;3;3;3;3;/</;3;3;3;3;3;/(+CT````C&AK\%SVT
  225. XMVTVTVTVTVSW#VTVTVTVTV_3737373738/8/83737373738/:R!Q#````'!<?
  226. XM_A[9591DLF],%DPN-4T![55-5M#2@+!01````"8A(/X?Q!T_/1]<\17.$DS1
  227. XM-<P43+%5RA9,D77(&$QQE<8:3%&UQ!P$PQP5PAPDP1PUP!Q$L<5:'&21QU@<
  228. XMA'')5ARD4<M4',0_TQU0P$9(````(QPA_1^VUD1-(X/$I)3$@]$W311?330_
  229. XM734DU4%=6O08%*XDI*]!@4K57Q350ETU/TTT5-%'/1.$Q)2DPX/21$UFL,`R
  230. XM2P```"`=(/\?T1WN,]SB7:XA)-CB%$UN(634XAA-+B&DT!M<\<2QT%KQT4DM
  231. XM%7305)?0B!I.````'AD?_A[3XYX0'_&6&.*8CQEA!1XQGM/8%%`````B'1_^
  232. XM'@'T6UG@'$M)6U33T,A)4@```"$:'_T>W"324ETS-=,D34%%TR1=(E33%5TA
  233. XM9-(7397939797939/;+;';';'2&!TQ<=06'4)1U20=85'5)!U3,=12VQW!#0
  234. XM'E,````0#QC^$X9R4D+!TL+1WC+?/4MJ:VM;3>(L*D;`(E0````C'"#]'S7%
  235. XM6(@_IJ$U1$570D<_DR.1XK;:[53:;4TVP$!5````(1H?_1Y=/2;8XTUXTD%!
  236. XM2D-#1T1$145%0U5%4D9&0>161E%&1D)515-%145$1$=#0TI!04THU^--AM+3
  237. XM4,`T5P```",<'_T>;3U&VN),5T=?)&1D7H145'-44X1$1)-$0Z0T-+,T,]`R
  238. XM0CTLU8V>--IM33;`1E@````A'"#^'ZC5-CT3H[/#E,1TT45=%4330^9=-333
  239. XM1%T57TT4<]$X3$D\.RPL.CT"HG%BHF)QH7$18H)A(7&!<2F)/XB"N%!9````
  240. XM)B$@_A[5\=,TS!1<L53*%ER1=,@87'&4QAI<4;3$'`7#'!3"'"7!'#3`'$6Q
  241. XMQ4H<99''2!R%<<E&'*51RT0<Q3'-0ASE$<_UT?/3'$#`1EH````8%R+^(+73
  242. XM)2T!@K&BD<*#HH239*-RL]?B2E1()1-&-Q(V.54Z5#M32U,\0_3$-+0TQ#],
  243. XM-/2S5*-SHH.2HW+#0])LH#-<````(QHD_!R]*[2Y2Y2Y2Y2Y2Z.Z2Y2Y2Y2Y
  244. XM2Z.]2]2]2]2]2].]2]2]2]2]2]2]((O9J#)>````(QHD_!PKU+U+U+U+U+U+
  245. XMT[U+U+U+U+U+T[I+E+E+E+E+H[I+E+E+E+E+E+L@H]F8"5\````7%P,`]MO0
  246. XM.&$````=&!3^$Y4!,T+3<F%#@U$TDE$SHS$THS$DLS$O2S(23#$3],1/3#8\
  247. XM-CI7*1,D$R4U(A99,L!-8@```!H8*?\?TUU"4M$7+0&2L:*ALOD;.!PX'"@<
  248. XM.!PI%8H5$SH642GQPX'$;C'01>(=!&'$8L-Q$:1Q$:.!(8.!0D.A9<\=GC'9
  249. XMXAV@P#%C````&!8>_Q-EH4B!2G$[84)S43&B42*Q03'!0=3Q(=7B$1UN(M?B
  250. XM'7XBUN,M;B+7&L`Z9````!01(/X?M+)!DF%R<7+1/1+2\]%-%=!=!:>#0V-3
  251. XM5&)3<D1R/B2"+TD32"/T@5-R4W%R89)!M8#`'64````2#Q3^$Y9SH[.SM+._
  252. XM2[/B3.(]`M$M$E)V0,`X9@```!03*?X?SB'5;"4:$EH=0=0=0M,M0=0M0=0M
  253. XM0=3RT^0M/C/4+4/372;1C0C0?234XRLC+11PP#%G````%Q4>_A,T95$R,D)!
  254. XM,Q%R(42"+Q0Y1#DVXCDUXSDUXSDU.3<I/5\]3C/4XCU2<,`_:````!42(/X?
  255. XMM,(RHD.#4G-B<G-3<T1S0X,T=#.$XB2$%(0OTR2$'B2$)(,T=#.#0W1#<U-R
  256. XM<F-R4X-"HC+$L-`>:0```!`,%/X34J..,XXCCC.#<1-A$W$383)10C)D8,`S
  257. XM:@```!H6%/X34J-S=E-Q%&-2,G-!T3,=$S'2,ATUU*LV2?.#@Y-!XA.302.B
  258. XM,2.R,3+$,,`\:P```!L5(/T?4]<];SU4U?/535\]5-7SU4U?/535/432(4T"
  259. XM,\)#LT238X-S<X13HT.S,\04T#$]$Q+3,,`S;````!L8'O\3<J*CDXXSDXXS
  260. XMDXXCDY.30?-(-!1'1!1&$3,49!,C%#)51?/7XSU^(]@MD,`L;0```!85%/X3
  261. XM1*(GH^)#HU.34Z-?.38X-CDG."@W*38I-BHU*S0L,BT&TDU`P#UN````%!,I
  262. XM_Q^^(=5Z11@Q:#TDT?31Y$TSTS%J-A@A>"TRU!U"T^(M/B/4/372;1C0C1;2
  263. XM73/4*A8K%"T%8-`H;P```!83%/X3E<-"DG)C@T2#0Y0DE.(4J.*D%)0DDT.$
  264. XM0X-B<I)#Q9#`,7`````:%A3^$TU3UBUQ)147)A08%Q0=(D'2%1TA0M'R0M$5
  265. XM+0\E+#4L)CKS8Y-TDH)PP#%Q````&!4>_Q/%T3,L)BHG.#<W\X3B4Y3B0Y13
  266. XMA%\Y-D<W1C<R%"DS2_/4XSU.(]4M8,`H<@```!H7%/X3G1?3751%24<Y.3<Z
  267. XM-N([->([-O.C<Y.2DK)RT"0M-='`(G,````4%!3^$TTSU"U1)AHG&A<M4M4=
  268. XM7C+4/4\M3B/3/5+0P"YT````&184_A-$HE$RA#%"A2%#A!%3DQ%#LU.Q;B/!
  269. XM7SP6\[%_.A@Y&B@<)2T6D,!-=0```!L8*?X?U/'9XQV>,=GQUWT3,2.C05*"
  270. XM86)B<6-#<7(S<8,B@8/Q.!AO@8,3@8(C@7,R<7-#87)B86*"44.C(3/1?7\=
  271. XMGC'9XATPP$QV````'!D=_Q-$TQ,230$Q0]`82QHZ&T@=`W'1-ATD0=0T'4,Q
  272. XMU4$==-CSVCV$UQ$]8234%#TQ4](631%ST!@\&4H;.1Q#$QT3,2'40\!2=P``
  273. XM`!X;*?X?UN(=SC'<XQW!T4@6)1,G%4,4)Q52%#47014U&#$4-ADU-AD6XC8:
  274. XM%3<9%C8:%O-AD7-A@8-1@:)1<;-!4M$R$RU7V>(=SC'<\=3`.7@````<&Q0`
  275. XM$U'4)AU$0=53'63R'8,AV1(;&Q+QHK$1LJ$AL;$BH:(BDI(R@X)#96-+&FDI
  276. XMAT>D=)!X"7D````-`BW[(=+`(7H````7$"W](<2CPM`\[1/#P[25T4T3T3T>
  277. XMT3T3T2TCTD#((7L````7$"W](5T4T3T3T>T3T3T2TCTDH\+0/.T3P\.TE;#`
  278. XM)7P````C'!3]%%74$XTQ*]$114PA*$M+2"$L14$=&R'3@QU%#8`K"`U]````
  279. XM(QP4_11'TT?31\@N?@```!<0+?TAXBTN(M+B+2XBTN(M+B+2XBTN(M+B+2XB
  280. XMTN(M+B+2XBTN(M+RTA#`27\````C'"+](%6%B4E34R-3,W9S+RE)(3HJ7[*T
  281. XMY-M=DQ+9(CUS,M<D/5-3TS<M,H/1.3P[.CT#@](V/4-#UC(]@B+9;:]-SRT`
  282. XML!^A````%Q`I_1^!PO+!2Q$A&1(B%Q,C%"0D(18F'M-R<(`=H@```"TF$/T2
  283. XMI!K?&M&M&M&M$].I&K&K&K&K\:L8L!^C````%Q`I_1]^TR<6)A$D)"03(Q<2
  284. XM(AD1(1M,'RPQ<(`=I````"TE$/P2<:KQJAJAJAJAJ=$AK!K!K!K/&L&DR"JF
  285. XM````%Q(4_A0M--%L(CLC225')T4I-"I"\L:D(I-"=%)4<C22([;$T2TPP"JH
  286. XM````%Q(4_A33+13&LR*4,G125')#DB2F_")*)#DE1R=%*4,K,BQM%-,@F`FP
  287. XM````%Q<#`"+;R!JU````'A<<_1KM<M9=0Q+4(CTC,]`U5UC0T'C`&K8````>
  288. XM%QS]&H?0T(5U4]`S/2,BU"$]1>U]8L`KMP```!X5'/P8G'T533/4/4/5+5/5
  289. XM\M4]7RU@'_UCUO+6/6+6/6/6/636T9S`*KH````C&AS\&)U'UE38/9/9/:+:
  290. XM/:\MH]KE+;/;\ML]LML]L]L]M-O6G4#(*KL````C&AS\&-2=;;3;/;/;/;+;
  291. XM/;\ML^7;+:/]HMH]HMH]D]D]A%UGU)#`++X````C&B3\')U'UE38/9/9/:+:
  292. XM/:+:/:YBVSVRVSVRVSVSVSVTV]:=0*K]P,@LOP```",:)/P<U)UMM-L]L]L]
  293. XMLML]LML^;;+:/:+:/:+:/9/9/81=9]0++]P0J`S(````'A<-_0_3ZKH@P!7,
  294. XM````%Q`2_1-6BEP_T1!S\=$\6H90L%?-````+28K_2##C/PLI87&3"3#/&/!
  295. XM/(.SRCD\PX+.)SSC4]`T\M(C/2,O+4(3U%Z-9=0_$M0B/2,_+2)#T#4\XW+.
  296. XM*#S#D\H[/(/!/&/#3"3&6%RL+/C#T!S.````%`TJ_1]AOE.^,7,A(QT3(2-^
  297. XM(;X!,[YA8,`ESP```!0-*?T?8;Y#OQ<4%!'=XF&^0['<&^0[XA;=$4%!?QOD
  298. XM.Q;`+]4````3$2O](,/0(AP2/Z(4HB*CT>0M'D/1+1YCT2T>0]'D+1.B(J]!
  299. XM*C(<$BT#P-!.V````!<2)_XBWRF8)#@F)R<U)U0G(2,W(3(H(B(G,B(G(R$W
  300. XM(V8S;B8D931N)25D-6XD)F,V/Q(R<B,38R,2<S\A)R5&)R8H-"F),!'RT,!R
  301. XMV0```"TF*_T@THW\VTA-=,34/3/2+7+0+9*RVRGRW2<M\E\@$20M"8(RPV."
  302. XM(K-D@B*C=((2I(*DI-=*/83EE-@A*3UR(I36(BE*&",I.A<D*C@8)"LU*24L
  303. XM:B?RW2DMLK+9+0+7+2/3/43$UTA-O-^-(*@-V@```!P5%_T6T>M[;1"("^``
  304. XM```H#2WO(-OJUX@,X0```"@-+>\BZM9]4,`;X@```"@.+>\@PJ24E)24E925
  305. XMCUAH6.)H6.WF@,`=XP```"@/+_@BGM%OAH:&AH65=I/&Q;6VIJ:O:NT6R!KD
  306. XM````*`XM[R+MYI6>)I66GUI:2EI+2TM+3""(#/`````H#BWW(-OJV&"P#/$`
  307. XM```H#BWW(H[:`^#8&O(````H#RWX("U,3$Q,3$M;];];]:]J6N`=8,@=\P``
  308. XM`"@.+^\B[1:?:6E:6EM;6SE75UA86&?V?M%HT!OT````*`\M^"*>`=:5GVGU
  309. XMGUGUE:2DI*2DI++0N`KU````*`8O[R(/X*@)]@```"TL`0`,T;`M^P```"TF
  310. XM&OT7PQV/+7+7\M<M?/G2<]4]1=-==-A-@]DMG1K/P"V2V?+9\MD<H-@+_```
  311. XM`!P5%_T6`!Y0L"W]````+28:_1?*'9\MDMGRV2P,^M+8/9/877743435/6*-
  312. XD&L_7+7+7\M?RV!PPT!'^````(QP@_1[>`0+0.NS2T#KU]O;V
  313. X`
  314. Xend
  315. END_OF_FILE
  316.   if test 6107 -ne `wc -c <'fonts.lj/S.11.pk.UU'`; then
  317.     echo shar: \"'fonts.lj/S.11.pk.UU'\" unpacked with wrong size!
  318.   fi
  319.   # end of 'fonts.lj/S.11.pk.UU'
  320. fi
  321. if test -f 'fonts.lj/S.14.pk.UU' -a "${1}" != "-c" ; then 
  322.   echo shar: Will not clobber existing file \"'fonts.lj/S.14.pk.UU'\"
  323. else
  324.   echo shar: Extracting \"'fonts.lj/S.14.pk.UU'\" \(7707 characters\)
  325.   sed "s/^X//" >'fonts.lj/S.14.pk.UU' <<'END_OF_FILE'
  326. Xtable
  327. X !"#$%&'()*+,-./0123456789:;<=>?
  328. X@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
  329. Xbegin 644 fonts.lj/S.14.pk
  330. XM]UD``.``````````!":N``0FKK!D(0```"TK._TKW2_</]L]OSV_/;XCV_/;
  331. XM\]OSV^(]OSV_/;\]OSQBQSQCQSQ4QSQ!%,4\,B3%/"%$Q#R4PSR4PCRTP3R_
  332. XM3`/-2SS4H\])//](/1]&/3XD0]7T(]?WV&VEVDW//-#`:R0````]-AG]&)?9
  333. XM?2T-3+T]!S652;63<Z>4T"4\=STR0M)E/4(RU&,]8B+583UR$M:MA->-E-AM
  334. XMI-EME-IMA-F-=-BM8A+7,6U2(M8S;4(RU#5M(D+3-WPU+027HW.5N465-]#3
  335. XMO-30TGV7D'`?)0```"\H(_T?BDFVF>.`F6FT#Z`@#Z2;:9XX"9:;2*#`4B8`
  336. XM```O)QG]&(;75JTW31Q71FI)*E@Z+%8Z/05#LM)2/"TU$[+5?"U6T"UET"UT
  337. XMT"UUPM=K+6?"U#%;+4,EHM,T6BT39:+#A9.4IH15R6K3>&UUP$<J````+QP=
  338. XM]QP2VEV3$]=!350TTT5-%'3$E*2TA-!&321$U$)-:-AMI-IMB-9"341$TD9-
  339. XM!(2TI)3$=-%%330TU4(]=]DQ+:)H"2T````O)`/[#]6P.CP````L(2'['M(]
  340. XM!<Y\QLULULULULULULULULULULULUL]-%M%M%M%M%M%M%M%M%M%M%M%M%M%]
  341. XM!=(PN#H]````+"$A^QX])=%M%M%M%M%M%M%M%M%M%M%M%M%M%M%,]LULULUL
  342. XMULULULULULULULULULULY=`](,@B0P```"(=*?TH_?9-!F33-O34)DU1;TU2
  343. XMY%36'MI4W%UOTM&P9$0````N*"G]*,?RV?37;6$4U1)=0333%%TA5-$670%T
  344. XMSQA<X93-&ES!M,L<!<H<%,D<)<@<-,<L-<8<5,4L5<0<=,,L=<(<E,$LE<`<
  345. XMM+++6AS4DLU8\<]'\=%%\=-#'44MH0-`P%](````*R4I_2C1G=-SV3L]5-!-
  346. XM(]0]!-1+362?381TVD5=I43<0^)=Q23>05WJ]!U!2N)-9*]!U!2MY13>0N)=
  347. XMQ33<1%VE5-I&785TV$E-9+3430/4/23035.SV3<]V='`44L````F(BG^*-/B
  348. XM(!+B0!!M_Q%-X27=\33<%%V_%4VA9=GQ=-@877\936&EU?&TU!Q=/QT$TAT5
  349. XMT?'230'37/'42QU5KQUDDM98+71EU6/YT,!P'TX````E(2G^*!XI<N0940M_
  350. XM&+&$XHV$\8L0U^09<Y7=F!%0````*2,I_2C<ZZ5*=%^D>D"X6%(````H(BG]
  351. XM*/U23)<ERT-<LT3,)%RR5,PE3+)5RB9,L67*%UR1A,D872723272723272/4
  352. XM'4\=0=0=3QRAD<L8',%QS"]AS24<TE'.)!SC,<U3'*@M0=40P#)3````%A<?
  353. XM_QC(S0A71CP6/6+7+7/6XCUN)-=-9=5]1]2-.=.=.-1]5M;TUO/2$STGU4FP
  354. XM.50````K)2G]*%7%6)P97`JSPHP2-E=6,2I&.CP$0\`L$T/`+!,SP1PS(]$R
  355. XM+3(3T_;375[*34;._$K`4%4````H(BG]*)_3VF`0Y$WJV$)"33-44\1D9)1T
  356. XM='2$A%24E#64E2]*2D'D6DI?%*2D)925-)245(2$='1TE&1DPU13TT)"38K>
  357. XMY$`0;:_3D+!$5P```"LE*?THO\3.;4Y$Q%P$M22TI%]*24?H24A).4A)XDA'
  358. XM2SA'/`1T9,$W1CPS9%/%-40\<T0SRD%!3.C3Y$U&SOQ*P%98````*"0I_BC0
  359. XMK:2$U4Q-(],]`]4[/7.4UT=-E%]=E3YUVU--M$795?391EUU=-=)\]<[\]4]
  360. XM`M4M$],]+RTRCQ@M$H'Q&!T1@2&"PH$B@<&"*\L_K**X95D````S+"C])@//
  361. XM'>-M0D;3-6TB==$H;0*5SRILXK7-+`;,+!7++";)/#7)+$;'/%;&+&;%/';$
  362. XM+(;#/);"++7!+,;`+-6RSFHL]9+0:"T5<M)E/352U&,]5B+683U_C9;;]-TL
  363. XMD,!C6@```"`>*OTHT7U\U$9-(K3"T#LM(Z302%T3A=%(/23=3=XUN56<182"
  364. XM-62R)530$55-$15%TF1--C735$U%-=13734_744UU$1=-4341?331DTD=-(Y
  365. XM30.SP\2CT49=2]A],)!%7````"\D,OLEN"MDM&LFLFLFLFLFLFLFLFLFLFLF
  366. XMLFLFLFLFM$MFMFMFMFMFMFMFMFMFMFMFMFMFMFMFMEMTMS`!+[@=X)A$7@``
  367. XM`"\D,OLE*X2V:V:V:V:V:V:V:V:V:V:V:V:V:V:V:V:V2T:R:R:R:R:R:R:R
  368. XM:R:R:R:R:R:R:R:S6T2V,`%0N!W@B`E?````'1T#`/+>P$QA````)R$9_1BW
  369. XMV[UU5*)DA()DI')4M')$T$4D70121-%$)%T40D714B1=)2)%TE$E73=5TV9-
  370. XM17XDU$A-)I30>CLS-21&5$,FQXA[5,!D8@```"(B,P`GVFW+V%5-8Y34+#TR
  371. XMT$T2T4T"TD_"TT^RTTLM0\+32RTTPG<4T/)LT"AQ3"TTSRU$KC+52>,M58\]
  372. XM19/42CTTI=%:(2T4LB+$PC.$T"70T2>=/R`2XR`2XR`2(!/`16,````?'R7_
  373. XM&(;2)JT"7+)="B72DD2%<D/#<D+1)B0M(U)"TR0E'4)"VC(MPB+<XB$MWTWN
  374. XM(]_B+?\]\M_C/>XCW_(!`='`260````;%RC])]%=.=`U.D@I.2@]9-;SU_36
  375. XM75?4?4?5;2G%%J1&A'1TA&2D1:1$PS]<,O70(_7#--`D3#3TPE2R=)-T@Y1C
  376. XMN]%[P"5E````&1,9_1BXFG703131313170]='2/3/E72]---,Z%D9&NG4,!'
  377. XM9@```!L9,_XGT^,MJ-.M&M`R;0/8/8/8/8/8/9+9/8\]CSV//8XSV$V.,]GB
  378. XM39387877C5K3S2O4G6?839XCTA8]$T/3C660P#QG````'QLE_QA%EF=I0C0S
  379. XM5#)$$W025I025;,25:95ME3$]TQ.-DQ&XTQ&XTQ&3$@M!-KTV>--GC393;*`
  380. XMP$=H````'!<H_2?173C1-#PU.S<Y.#A(3V24]4I/1+0UI32UXB6U%;4OV"6U
  381. XM'B6U);0UI3]+1/2D7TE&2$@X.3<[-3PT/1C371#0(VD````6$!G]&'+?2^-+
  382. XMXDOC2_3$@A22%((4DA2",W)$0VF%@,!`:@```",=&?T8<M!)2GA(ET@R2$<D
  383. XM.48M1$/41"UD,M=!/8G6T=)$C02%Q)2TM*XDM&+Q3#8B3$0C3$,C31=2U$7`
  384. XM3VL````D'BC])W3<?=7=7=3=7=3=]=U-U=U-WUW4W5W4W?7=3=]=MMJ-@R37
  385. XM,UU31=0V33-UT3E-!)6TI:3$E-!7321DTU1-13360DUU(ME0P#]L````)2`E
  386. XM_ABBT2T/3$OC3$OC3$OC3$M,3/3$4E2U4D6T4E6E4E:"%$)74R0R5!I'9#:$
  387. XM?TWN--[C3>0!`@$`P#AM````'AP9_1A5TB+YT45=!&]-%%]=!&]-!&7$=;2$
  388. XMPY2TA:25E*24M(/%<]!5311$TT)=.M5]A-O`2FX````;&#/_)]+C+9G,O0E3
  389. XM:5U5U5UDUO75XUU_7748O]"C**/7/7/7/8+8/8+8XSV$UUUVU8U*T[T=#1O3
  390. XMG5;738/0%SQ$/1G49]`T;P```!T8&?T8MP$;M524A'249+1$Q#7$--45U174
  391. XM'B75%=0O35),4TQ$2T9)2#A*1%R@$FS`.7`````C(!G^&'VVWDWDWS1B8K."
  392. XM4K\I)BV28M@U/8\F/7\V/6XC<]5'/5.$T_2$TDE=%*31.TT3PJ#`07$````?
  393. XM'"7^&--M>M1$32-TT#E+.DH[24M)/%=,5TQ'XDQ73$?TQ73$A+2/6DEH.T$E
  394. XM2T.<1%TO3:XTVN--I-PMP,`Z<@```",?&?T8O6K9?:?;9F702EM,2DT$I-$Y
  395. XM32.4T4CC322$T4D]))/12CT3M,/0.ST4D]-&36K:;6#`)W,````;'!G^&'UV
  396. XMVDVDVS1RT3DM#RH]SRW.(]OB/;]-OSV^)-I-PM7`/W0````A'1G_&&32)GT$
  397. XM0S.V(E2F(E2U$F3$$E30;V31*/32*$T2CTTBA-$H32*/31*4T"I,+$LL23T5
  398. XM8]2MA[#`7'4````D'C/])]CRWN,M[C+>XRWBVLT]/%0D2D4F1T<G14@H-$DH
  399. XM0SDI0DDJ,4HJ,4HICBHJBBE!22I!22HR22E"22A$."A%1R='1B9)121-#2U+
  400. XMVO+>XRWN,MXM<,!C=@```"8A)/X85=D3C7(C-=0C)%TR,F71+030+16RTTHM
  401. XM18+55SUD8]=5+91"VD,MM1+=;>]0$$WUWGW#%-PB7:(UV25-@F76)UU2E=,J
  402. XM72+$T2T%P]%5(STE4C+44R,M:#+95+!I=P```"@D,_\GSBU>,M7C+5XRU?+&
  403. XM3`*"9[)T0S.2=B)4@G8B5(*%$F2"E!)4@J;V2"LH22LH2"P"A(*RCTDK*$@K
  404. XM*$DJ.$DJ*4DI*D@I+`1R@L%')RPU4E/%8B1,C"S9TBU>,M7C+5\LD,!%>```
  405. XM`"8B&?X88=HG+913V&0MEC+;4RW$(MTS+>(BT"T"+RQ,(>(L3"(L/",L.S,L
  406. XM.R0Z.S0Y635&AD;??!T(L[J5C16%P"@)>0```!`#._HKWL`J>@```!P3._PK
  407. XMTDQ-$](](]+M8](](](]%,3534/4/4/4[6/4/4/4/4350,@J>P```!P3._PK
  408. XM3534/4/4/4[6/4/4/4/4353$T3TCTCTNUCTCTCTCT4Q-(+`Z?````"\H'/T;
  409. XMA<X6K*),')(\/((F5L8R2EQ#$\%<(R/"7!,3Q%I"/&96(LC#,LG!0LJG'-4`
  410. XM&EVA`T`X$7T````O*!W]'(P6(/VT#]8AC,@Y?@```!P5._TK+6\];B/6XCUN
  411. XM(];C/6XCUN(];B/6XCUN(];B/6XCUN(];B/6XSUN(];B/6XCUO/6(+!D?P``
  412. XM`"\I*OTHAL%L&YN<)<)U935E5*04I$/`,3P#/SPEPC(\,\,Q\\0\1L4L1N37
  413. XM/Q/5,_/3-?/1-SSSA,U)3+2TR4P4QTPTQ4Q4PTQUM<E97,1TST5-%#33,SU3
  414. XM$]9]==GB/'"P):$````>%S/])[+(/']<5\.<$Q,3LR,CDS,S9$-$)&-D$8.!
  415. XMOMHZH"6B````/385_1C/\MD]DMD]D]D]D]E#VA!`U4UCUSUSUSV"V#V/*K`E
  416. XMHP```!X7,_TGKMH[&#@11C9"1#1&,S,Y,C([,3$\&<-\7UQSR2J@):0````]
  417. XM-A7]&*\M@]@M@]<]<]<]9-4$`=HTV3V3V3V3V2V3V?+/P$.F````'AL=_QP2
  418. XMVTVFV(UC%M0S;2-6T#=<.5HZ:#QF/19#TV(]6==]51/38CT60\9CIH.5HW7#
  419. XM5M`S;2,6U(UFV$VRV\!$J````!X;'?\<W"VDV%UXU&$])C/093Q7.EDX:C9L
  420. XM-&T3)M,Q75?7,5U3)M,T;1-FPX:CI9/%<]!E/28SU&$]:-AMI-P@B`FP````
  421. XM'1T#`"S>P".U````*2(D_2(2`07MO?/Q/=,SVS1-E%371UTUEZ?-?3T]BL#`
  422. XM([8````I(B3](LK8T]/7QZ>5TU=-=%391#VS/SW3'ML]\Q(!`L`SMP```"D>
  423. XM)?L@T=.]:=AWV5VTW$W$W3W?/=XCW>(]X%#BW^(]_SWSWDWDWDWEW7W-B];1
  424. XMT[`PN@```"\D)?L@PLJ\V<]WT%TDTTTTU#U//4XCU.@];B/6\]8]5-5-5-5=
  425. XM1]//O-PLH+`QNP```"\D)?L@')PLW`SM-]1=5-5-5-4];SUN(];H/BU#U//4
  426. XM/433333270>,Z<W`R<*P-KX````O)#+[)<+*O-G/=]!=)-----0]3SU.(]3H
  427. XM/6XCUO/6/535353574?3S[S<+*`!3M8=<M:P-[\````O)#+[)1R<+-P,[3?4
  428. XM75353535/6\];B/6Z#XM0]3SU#U$TTTTTET'C.G-P,D`%:UBUQUB>`S(````
  429. XM*2(0_13>Z$ESP![,````'A<7_1F'T;K2?47]8_V!"4\=@_UEU'TJO1>`H&C-
  430. XM````/38U_2B[K-M\>[PXJ+]K=KMKMKA;];9,-+1,5+),=+!,E*/+.3S3=,U&
  431. XM//->(]$SXCTS'J/5/B$],SXCT34\\V3-1SS3D\LZ3)2P3'2R3%2T3#2V6_6X
  432. XM:[:[:W:_BHP[O'M\VKNP'LX````;%#3])Y+%Y4Q>4J1"1!W!1"1*Y"Q>R4Q>
  433. XM<I"P+,\````;%#/])Y+%Y$Q>0I<B+6(B?DDL7D3%+:+%Y$Q>0I<B+6(B?DDL
  434. XM7D3%*<`[U0```!D9-?THU4UVU3,M0C3BTC)=$T/2XSV.)-CSV.5-?F37Y4V/
  435. XM/8XDV.,]$U/0XE,]%#/3)"U7UDU0P%+8````'A<P_2O4+7\]!1.\I%23A'1V
  436. XM8X9?.3$T.#(S2#)"\Y,S(X-#'T@TCC<UCC8VCC4WCT.$$T.#+S,Y,O0CA#\Q
  437. XM.35H-F='1TE%2LNL\]<M0+"AV0```#@Q-?THR)V</4Q]!Y?-7#7*7'7'7)7%
  438. XM3-3#3/3!312TTTH]4Y\]<W\]DU/';"-#Q#8L`S/$*AP#(\,J.S(\(Y2S(\$Z
  439. XM2S$\([+!;\$\]N7`3/,3M,XR/`/.,CP$S3(\$\(:,SP#PADT/!/`&C4\$L`9
  440. XM-CPBH:-SPC8J.#Q'P#D]4Z332TT4P4STPTS4Q5R5QUQUREPUS7E]#'U,/9G(
  441. XMB`W:````(AL<_1O;Z<G-L*@,X````#(1.^LJ!3[8H*@,X0```#(1.^LL[8>@
  442. XM3,`AX@```#(3.^LJTST5T&QL;&QL;&SVQL?&Q\;/?&SC>^`6?,`JXP```#(3
  443. XM/?<LSM1^*WM[?&QL:WMK>FT$TFTGT6T7T6T6T6T'T'T.)]#M1[@GY````#(3
  444. XM.^LL[7?!XWP6P??!;!?!;!?!;"]L)L)L)L)L)L)L)L)<0Z@,\````#(1._4J
  445. XM!,[8IZ`,\0```#(1._4LKM@%,+@G\@```#(3._<J/$7";";";";";";";"]L
  446. XM)L%\%L%\%L'WP6P>-\'M=\@J\P```#(3/>LL[4?0XGT'T'T&T6T6T7T6T7TF
  447. XMTDT&I[:WML;&Q[>^)[[4?,`A]````#(3._<LS@%GX[?&SWQL?&Q\;/;&QL;&
  448. XMQL;&T%T3TQ@*]0```#('/>LL#Y"H"?8````W-P$`$-R@0/L````]-B/]'[H=
  449. XMD]=-9-<]=-9-9-9-;-LL^PT*357473?1C3?7;7;7787778S[+.L\RU38/838
  450. XM38/83838/9'%V`O\````(AL<_1L`+V"@0/T````]-B/]'\4=D]A-A-@]A-A-
  451. XMA-A+3-LL^QT-A-A=A==]:-1])M-M1=1=5:S['.L\S637/73637/73637/9&Z
  452. X:4!3^````+R@I_2=M*`YK-LTN:6TVS2#U]O;[
  453. X`
  454. Xend
  455. END_OF_FILE
  456.   if test 7707 -ne `wc -c <'fonts.lj/S.14.pk.UU'`; then
  457.     echo shar: \"'fonts.lj/S.14.pk.UU'\" unpacked with wrong size!
  458.   fi
  459.   # end of 'fonts.lj/S.14.pk.UU'
  460. fi
  461. if test -f 'man/cat.5.S' -a "${1}" != "-c" ; then 
  462.   echo shar: Will not clobber existing file \"'man/cat.5.S'\"
  463. else
  464.   echo shar: Extracting \"'man/cat.5.S'\" \(7583 characters\)
  465.   sed "s/^X//" >'man/cat.5.S' <<'END_OF_FILE'
  466. X.\"@(#)cat.5 2.3 91/03/20 04:11:28 (Henry Spencer/Chris Lewis)
  467. X.TH CAT 5 "Psroff %%T2VERSION%%"
  468. X.DA 4 April 1981
  469. X.SH NAME
  470. Xcat \- C/A/T phototypesetter code/width tables
  471. X.SH DESCRIPTION
  472. XThe Graphic Systems C/A/T phototypesetter is driven by sending it a
  473. Xsequence of one-byte codes
  474. Xwhich specify characters, fonts, sizes, and other control information.
  475. X.PP
  476. XThe C/A/T's basic unit of length is 1/432 of an inch (6 units to a
  477. Xtypesetter's ``point'').
  478. XThe quantum of horizontal motion is one unit.
  479. XThe quantum of vertical motion is three units (1/144 of an inch, 1/2 point).
  480. X.PP
  481. XThe top two bits of the code classify it as one of three major
  482. Xtypes:
  483. Xan \fIescape\fR code (top bit 1),
  484. Xa \fIflash\fR code (top bits 00),
  485. Xor a control code (top bits 01).
  486. XA code of all zeros is ignored;  a code of all ones is illegal.
  487. X.PP
  488. XA flash code specifies flashing one of 63 characters, as given by the
  489. Xremaining six bits.
  490. XSince this is not enough to specify all possible characters, or even
  491. Xall characters in a single font \(em there are 108 per font \(em
  492. Xvarious control codes (described later) select a font and either
  493. Xthe Lower or Upper half of the font.
  494. XThe Lower half is the first 63 characters of the font;  the Upper
  495. Xhalf is the remaining 45.
  496. XA flash code of 46 or higher in the Upper half is illegal.
  497. X.PP
  498. XAn escape code specifies horizontal motion.
  499. XThe size of the motion, in horizontal quanta, is the one's-complement
  500. Xof the low seven bits of the code.
  501. XThe direction of the motion is set by control codes.
  502. XHitting the right or left margin limit switch is illegal and will
  503. Xcause the machine to stop.
  504. XThe machine starts out, after initialization, hard against the left
  505. Xmargin limit switch;  an initial escape of 16 units \fImust\fR
  506. Xbe given before starting work, and the position after this motion
  507. Xshould be the limit of all future leftward motions.
  508. XFrom this point, the distance to the right margin limit switch
  509. Xis about 7.5 inches.
  510. X.PP
  511. XA code with the top three bits 011 is a \fIlead\fR code,
  512. Xspecifying vertical motion.
  513. XThe remaining five bits are the one's-complement of the size of
  514. Xthe motion, in vertical quanta.
  515. XThe direction of motion is set by control codes.
  516. XThe amount of vertical motion is, in principle, limited only by
  517. Xrunning off the paper in the upward direction and by the limited
  518. Xcapacity of the output cartridge in the downward direction.
  519. X.PP
  520. XA code with the top four bits 0101 is a size-change code, which
  521. Xspecifies movement of the lens turret and the doubler lens to
  522. Xchange point size.
  523. XThese codes are as follows:
  524. X.PP
  525. X.RS
  526. X.nf
  527. X.ta 2c
  528. XSize    Code
  529. X
  530. X6    0101\|1000
  531. X7    0101\|0000
  532. X8    0101\|0001
  533. X9    0101\|0111
  534. X10    0101\|0010
  535. X11    0101\|0011
  536. X12    0101\|0100
  537. X14    0101\|0101
  538. X16    0101\|1001
  539. X18    0101\|0110
  540. X20    0101\|1010
  541. X22    0101\|1011
  542. X24    0101\|1100
  543. X28    0101\|1101
  544. X36    0101\|1110
  545. X.DT
  546. X.fi
  547. X.RE
  548. X.PP
  549. XSize changes involving the doubler lens alter the horizontal position.
  550. XChanges from single to double sizes should be followed by a forward
  551. Xescape of 55 quanta;  changes from double to single sizes should be
  552. Xfollowed by a reverse escape of 55 quanta.
  553. XThe single sizes are 6, 7, 8, 9, 10, 11, 12, 14, and 18;
  554. Xthe double sizes are 16, 20, 22, 24, 28, and 36.
  555. X.PP
  556. XThe control codes with the top four bits 0100 specify miscellaneous
  557. Xcontrol codes, not all of which have valid meanings.
  558. XThey are:
  559. X.PP
  560. X.RS
  561. X.ta 6c
  562. X.nf
  563. Xinitialize    0100\|0000
  564. Xstop    0100\|1001
  565. Xupper rail    0100\|0010
  566. Xlower rail    0100\|0001
  567. Xupper mag    0100\|0011
  568. Xlower mag    0100\|0100
  569. Xtilt up    0100\|1110
  570. Xtilt down    0100\|1111
  571. Xupper font half    0100\|0110
  572. Xlower font half    0100\|0101
  573. Xescape forward    0100\|0111
  574. Xescape backward    0100\|1000
  575. Xlead forward    0100\|1010
  576. Xlead backward    0100\|1100
  577. Xsoftware cut    0100\|1011
  578. X.fi
  579. X.DT
  580. X.RE
  581. X.PP
  582. XThe \fIinitialize\fR code causes leftward motion to the left margin limit
  583. Xswitch,
  584. Xand sets the following modes:
  585. Xescape forward, lead forward, lower font half,
  586. Xlower rail, lower mag, tilt down.
  587. XNote that the left margin limit switch does not define a precise
  588. Xposition, and hence reinitializing the machine
  589. Xwill destroy precise left-margin alignment.
  590. X.PP
  591. XThe \fIstop\fR code stops the machine, which must be manually
  592. Xrestarted (normally after changing output cartridges);
  593. Xthis code should be used only at the end of a run.
  594. X.PP
  595. XFonts are selected by the combination of \fIrail\fR, \fImag\fR, and
  596. X\fItilt\fR.
  597. XThe tilt codes do not exist on the 4-font C/A/T;  this is the only
  598. Xuser-visible
  599. Xdifference between the 4-font and 8-font machines.
  600. XThe correspondence between rail/mag/tilt and font number is as follows:
  601. X.PP
  602. X.RS
  603. X.nf
  604. X.ta 2c 4c 6c 8c
  605. Xrail    mag    tilt    4font    8font
  606. X
  607. Xlower    lower    up    1    1
  608. Xlower    lower    down    1    2
  609. Xupper    lower    up    2    3
  610. Xupper    lower    down    2    4
  611. Xlower    upper    up    3    5
  612. Xlower    upper    down    3    6
  613. Xupper    upper    up    4    7
  614. Xupper    upper    down    4    8
  615. X.DT
  616. X.fi
  617. X.RE
  618. X.PP
  619. XThe \fIsoftware cut\fR code should not be issued to the hardware, but
  620. Xis used by local spooling software to indicate places where it is
  621. Xlegal for the spooler to break output between pages.
  622. XThis code should be followed by an \fIinitialize\fR code.
  623. X.PP
  624. XA complete C/A/T file should begin with an \fIinitialize\fR code followed
  625. Xby an \fIescape\fR-16 code,
  626. Xand should end with 14 inches of trailer and a \fIstop\fR code.
  627. X.SH "CAT WIDTH TABLES"
  628. XBack in the origins of CAT troff, the width tables were generated
  629. Xby compiling a C source file that contained a initialized array of
  630. X224 characters.
  631. XEach character was formed by or'ing the width of a character
  632. X(width of a 6 point character in 1/432's of an inch) with kerning
  633. Xinformation shifted left 5.
  634. XThe kerning information was generated by or'ing together a "2" for
  635. Xascenders and a "1" for descenders.
  636. XThe width of a character had a maximum of 63.
  637. X.PP
  638. XIn the Version 7 troff (and many later troff's, eg: Ultrix and Sun),
  639. Xthe a.out header produced by the compile/assemble step was left on
  640. Xon the front of the file when installed in /usr/lib/font.
  641. XIn these cases, the supplied troff knew to skip the first
  642. X"sizeof(struct a_out)" bytes (usually a magic constant instead
  643. Xof include "a.out.h")
  644. Xbefore reading the table.
  645. XOther versions of troff (eg: Xenix) have special width table builders
  646. Xthat produce width table files that do not have any extraneous gunk.
  647. X.PP
  648. XIf the vendor supplied width table files (eg: /usr/lib/font/ftR) are
  649. Xprecisely 224 bytes long, HEADERSIZE should be 0.
  650. XIf they're not 224 bytes long, you'll have to have HEADERSIZE set properly.
  651. XUltrix and Sun (and probably all other BSD-derived 32 bit machines)
  652. Xuse HEADERSIZE 32.
  653. XI think Version 7 Unix on PDP/11's was 14.
  654. X.PP
  655. XRather than document which character is which entry in the font tables,
  656. Xthe interested user should consult the
  657. X.B cattab.c
  658. Xsource file in the
  659. X.B psroff
  660. Xdistribution.
  661. X.SH "PSROFF NOTES"
  662. XHenry's manual page doesn't document the flash codes for each character,
  663. Xnor the width table indices, but in
  664. Xthe \fIpsroff\fP source code, they are listed in \fIcattab.c\fP.
  665. X.PP
  666. X\fISoftware cut\fR isn't used in \fItroff2ps\fP, because it only
  667. Xexisted at University of Toronto ages ago - \fItroff2ps\fP calculates
  668. Xpage breaks based upon y position and the page length (which is why
  669. Xit's really important to get \fItroff2ps\fP and \fItroff\fP to
  670. Xagree on how long the page is, ie: -rL/.pl etc).
  671. X.PP
  672. XBerkeley troff introduces one or two extra magic CAT codes which are
  673. Xdocumented in the
  674. X.B defs.h
  675. Xsource file in
  676. X.BR psroff .
  677. X.SH HISTORY
  678. XThe \fIsoftware cut\fR code is a local invention.
  679. XThis manual page written at U of T by Henry Spencer.
  680. X.PP
  681. XThe "PSROFF NOTES" and "CAT WIDTH TABLES" section written by Chris Lewis.
  682. X.SH BUGS
  683. XThe documentation and the hardware disagree on the initial tilt setting;
  684. Xthe above describes the hardware.
  685. X.PP
  686. XIt's not the fastest or most modern typesetter.
  687. END_OF_FILE
  688.   if test 7583 -ne `wc -c <'man/cat.5.S'`; then
  689.     echo shar: \"'man/cat.5.S'\" unpacked with wrong size!
  690.   fi
  691.   # end of 'man/cat.5.S'
  692. fi
  693. if test -f 'utils/dumpft.c' -a "${1}" != "-c" ; then 
  694.   echo shar: Will not clobber existing file \"'utils/dumpft.c'\"
  695. else
  696.   echo shar: Extracting \"'utils/dumpft.c'\" \(7283 characters\)
  697.   sed "s/^X//" >'utils/dumpft.c' <<'END_OF_FILE'
  698. X/*
  699. X    Copyright 1985, 1986, 1987, 1988, 1989, 1990, 1991 Chris Lewis
  700. X        All Rights Reserved
  701. X
  702. X    See the LICENSE file for a full description of restrictions under which
  703. X    this software is provided.
  704. X
  705. X    Function:        Dumps CAT width tables in various formats
  706. X */
  707. X
  708. X#ifndef    lint
  709. Xstatic char SCCSID[] =
  710. X    "@(#)dumpft.c 2.7 Copyright 91/02/20 09:11:14 Chris Lewis";
  711. X#endif
  712. X
  713. X#include "../defs.h"
  714. X#define    NUMPER    8
  715. X#define    WPER    54
  716. Xint dotab = 0;
  717. Xextern struct cattab tabN[], tabS[];
  718. X#ifndef    ASCIIWIDTHS
  719. X#ifdef    HEADERSIZE
  720. Xint skip = HEADERSIZE;
  721. X#else
  722. X#include <a.out.h>
  723. X#ifdef    X_EXEC
  724. X/*    Xenix I think.... */
  725. X#define    HEADERSIZE sizeof(struct xexec)
  726. X#endif
  727. X#ifdef    F_LNNO
  728. X/*    COFF format headers */
  729. X#define    HEADERSIZE (-sizeof(struct filehdr))
  730. X#endif
  731. X#ifndef HEADERSIZE
  732. X/*    Generalized V7 or BSD - non-coff format headers */
  733. X/*    This is the only one likely to be useful - Xenix doesn't
  734. X    need headersize, and I've not seen a COFF version of troff
  735. X    yet */
  736. X#define    HEADERSIZE sizeof(struct exec)
  737. X#endif
  738. Xint skip = HEADERSIZE;
  739. X#endif
  740. X#endif
  741. Xint guessflag, verbose;
  742. X
  743. Xdouble ditres = 1;
  744. X
  745. Xmain(argc, argv)
  746. Xint argc; char **argv; {
  747. X    register int i;
  748. X    register int j;
  749. X    int c;
  750. X    register int k;
  751. X    extern int getopt();
  752. X    extern char *optarg;
  753. X    int found;
  754. X    struct cattab *ct = tabN;
  755. X    while((c = getopt(argc, argv, "vgdstwfh:")) != EOF) {
  756. X    switch(c) {
  757. X        case 'd':
  758. X        ditres = (double) 300 / 432 * (double) 10 / 6;
  759. X        break;
  760. X        case 's':
  761. X        ct = tabS;
  762. X        break;
  763. X        case 'g':
  764. X        guessflag = 1;
  765. X        break;
  766. X        case 'v':
  767. X        verbose = 1;
  768. X        break;
  769. X        case 't':
  770. X        dotab = 1;
  771. X        break;
  772. X        case 'w':
  773. X        dotab = 2;
  774. X        break;
  775. X        case 'f':
  776. X        dumpexamples();
  777. X        exit(0);
  778. X#ifndef    ASCIIWIDTHS
  779. X        case 'h':
  780. X        skip = atoi(optarg);
  781. X        fprintf(stderr, "skip: %d\n", skip);
  782. X        break;
  783. X#endif
  784. X        case '?':
  785. X        fprintf(stderr,
  786. X            "usage: dumpft [-v][-g][-s][-f][-t][-w][-hheadersize]%s\n",
  787. X            " < cat width table\n");
  788. X        exit(1);
  789. X    }
  790. X    }
  791. X    if (guessflag) {
  792. X    guess();
  793. X    exit(0);
  794. X    }
  795. X
  796. X#ifndef    ASCIIWIDTHS
  797. X    for (i = 0; i < skip; i++)
  798. X    c = getchar();
  799. X#endif
  800. X    k = 0;
  801. X    for (i = 0; i < 224; i++) {
  802. X    found = 0;
  803. X#ifdef    ASCIIWIDTHS
  804. X    scanf("%d", &c);
  805. X#else
  806. X    c = getchar();
  807. X#endif
  808. X    for (j = 0; ct[j].ch_name; j++) {
  809. X        if (!ct[j].ch_name[0])
  810. X        continue;
  811. X        if (ct[j].ch_wididx == i) {
  812. X        ct[j].ch_info = c;
  813. X        found = 1;
  814. X        if ((dotab == 1 || dotab == 2) && ct[j].ch_catidx == NTC)
  815. X            continue;
  816. X        switch(dotab) {
  817. X            case 2:
  818. X            if (k % WPER == 0)
  819. X                printf("%s.br\n", k == 0 ? "":"\n");
  820. X            if (strlen(ct[j].ch_name) > 1)
  821. X                printf("\\(%s", ct[j].ch_name);
  822. X            else if (strcmp(ct[j].ch_name, "\\") == 0)
  823. X                printf("\\e");
  824. X            else if (strcmp(ct[j].ch_name, ".") == 0)
  825. X                printf("\\.");
  826. X            else
  827. X                printf("%s", ct[j].ch_name);
  828. X            break;
  829. X            case 1:
  830. X            if (k % NUMPER)
  831. X                printf("\t");
  832. X            else
  833. X                printf("_\n");
  834. X            if (ct[j].ch_name[0] == '\\') {
  835. X                if (ct[j].ch_name[1] == 0)
  836. X                printf("\\e\t\\ee");
  837. X                else
  838. X                printf("%s\t\\e%s", ct[j].ch_name,
  839. X                    &ct[j].ch_name[1]);
  840. X            } else if (strlen(ct[j].ch_name) > 1)
  841. X                printf("\\(%s\t\\e(%s", ct[j].ch_name,
  842. X                ct[j].ch_name);
  843. X            else if (strcmp(ct[j].ch_name, ".") == 0)
  844. X                printf("\\.\t.");
  845. X            else if (strcmp(ct[j].ch_name, "=") == 0)
  846. X                printf("\\&=\t\\&=");
  847. X            else
  848. X                printf("%s\t%s", ct[j].ch_name, ct[j].ch_name);
  849. X            if (k % NUMPER == (NUMPER-1))
  850. X                putchar('\n');
  851. X            break;
  852. X            case 0:
  853. X            if (i == 0) {
  854. X                printf("spacewidth %d\n", (int) ((c&0x3f) *
  855. X                ditres + .5));
  856. X                printf("charset\n");
  857. X            } else
  858. X                printf("%s\t%d\t%d\n", ct[j].ch_name,
  859. X                (int) ((c&0x3f) * ditres + .5),
  860. X                (c >> 6) & 0x3);
  861. X            break;
  862. X        }
  863. X        k++;
  864. X        }
  865. X    }
  866. X    if (!found && c) {
  867. X        fprintf(stderr, "Table problem - found %d character (width %2x)\n",
  868. X        i, c);
  869. X    }
  870. X    }
  871. X    switch(dotab) {
  872. X    case 0:
  873. X        for (i = 0; ct[i].ch_name; i++)
  874. X        if (ct[i].ch_name[0] && !ct[i].ch_info) {
  875. X            fprintf(stderr, "Table problem - no width for '%s' (%d)",
  876. X            ct[i].ch_name, i);
  877. X            fprintf(stderr, ", wididx: %d, catidx: %d\n",
  878. X            ct[i].ch_wididx, ct[i].ch_catidx);
  879. X        }
  880. X        break;
  881. X    case 1:
  882. X        if (k % NUMPER != 0)
  883. X        putchar('\n');
  884. X        break;
  885. X    case 2:
  886. X        putchar('\n');
  887. X        break;
  888. X    }
  889. X    exit(0);
  890. X}
  891. X
  892. Xchar *normch[] = {
  893. X"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o",
  894. X"p","q","r","s","t","u","v","w","x","y","z",
  895. X"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O",
  896. X"P","Q","R","S","T","U","V","W","X","Y","Z",
  897. X"1","2","3","4","5","6","7","8","9","0",
  898. X"!","$","%","&","(",")","`","'","*","+","\\-",
  899. X".",",","/",":",";","=","?","[","]","|",
  900. X"\\(bu","\\(sq","\\(em","\\(hy","\\(ru","\\(14","\\(12","\\(34","\\(fi",
  901. X"\\(fl","\\(ff","\\(Fi","\\(Fl","\\(de","\\(fm","\\(dg","\\(ct","\\(rg",
  902. X"\\(co","\\(tm",
  903. XNULL
  904. X};
  905. X
  906. Xchar *symch[] = {
  907. X"\"", "\\(aa", "\\e", "^", "\\(ul", "\\(ga", "~", "\\(sl", "<",
  908. X">", "{", "}", "#", "@", "\\(pl", "\\(mi", "\\(eq", "\\(**",
  909. X
  910. X"\\(*a", "\\(*b", "\\(*g", "\\(*d", "\\(*e", "\\(*z", "\\(*y", "\\(*h",
  911. X"\\(*i", "\\(*k", "\\(*l", "\\(*m", "\\(*n", "\\(*c", "\\(*o", "\\(*p",
  912. X"\\(*r", "\\(*s", "\\(ts", "\\(*t", "\\(*u", "\\(*f", "\\(*x", "\\(*q",
  913. X"\\(*w",
  914. X
  915. X"\\(*G", "\\(*D", "\\(*H", "\\(*L", "\\(*C", "\\(*P", "\\(*S", "\\(*U",
  916. X"\\(*F", "\\(*Q", "\\(*W",
  917. X
  918. X"\\(sr", "\\(rn", "\\(>=", "\\(<=", "\\(==", "\\(ap", "\\(~=", "\\(!=",
  919. X"\\(->", "\\(<-", "\\(ua", "\\(da", "\\(mu", "\\(di", "\\(+-", "\\(cu",
  920. X"\\(ca", "\\(sb", "\\(sp", "\\(ib", "\\(ip", "\\(if", "\\(pd",
  921. X
  922. X"\\(sc", "\\(gr", "\\(no", "\\(is", "\\(pt", "\\(es", "\\(mo",
  923. X"\\(dd", "\\(rh", "\\(lh", "\\(or", "\\(ci", "\\(lt", "\\(lb",
  924. X"\\(rt", "\\(rb", "\\(lk", "\\(rk", "\\(bv", "\\(lf", "\\(rf",
  925. X"\\(lc", "\\(rc", "\\(br",
  926. XNULL
  927. X};
  928. X
  929. Xchar *names[] = {"Times Roman",
  930. X         "Times Italic",
  931. X         "Times Bold",
  932. X         "Special Mathmatics font"
  933. X};
  934. X
  935. Xdumpexamples() {
  936. X    register int i;
  937. X    register char **p;
  938. X    printf(".sp 1i\n");
  939. X    printf(".ps 12\n");
  940. X    printf(".vs 14p\n");
  941. X    for (i = 0; i < 3; i++) {
  942. X    printf(".ft %d\n", i+1);
  943. X    printf(".sp\n");
  944. X    printf("%s\n", names[i]);
  945. X    printf(".sp\n");
  946. X    for (p = normch; *p; p++)
  947. X        if (strlen(*p) == 1) {
  948. X        if (isalnum(**p))
  949. X            putchar(**p);
  950. X        else
  951. X            printf("%c\\^", **p);
  952. X        if (**p == 'z' || **p == 'Z' || **p == '0' || **p == '|') {
  953. X            printf("\n.br\n");
  954. X        }
  955. X        } else {
  956. X        printf("%s\\h'.25m'", *p);
  957. X        if (strcmp(*p, "\\(tm") == 0)
  958. X            printf("\n.br\n");
  959. X        }
  960. X    }
  961. X    printf(".sp\n");
  962. X    printf("%s\n", names[3]);
  963. X    printf(".sp\n");
  964. X    for (p = symch; *p; p++) {
  965. X    printf("%s\\h'.25m'", *p);
  966. X    if (strcmp(*p, "\\(**") == 0 ||
  967. X        strcmp(*p, "\\(*w") == 0 ||
  968. X        strcmp(*p, "\\(*W") == 0 ||
  969. X        strcmp(*p, "\\(pd") == 0)
  970. X        printf("\n.br\n");
  971. X    }
  972. X    printf("\n");
  973. X}
  974. X
  975. Xguess() {
  976. X    char buffer[2048];
  977. X    int filesize, errcnt, i, g;
  978. X    filesize = fread(buffer, sizeof(char), sizeof(buffer), stdin);
  979. X    for(g = 0; g <= filesize - 224; g++) {
  980. X    errcnt = 0;
  981. X    for (i = 0; tabN[i].ch_name; i++) {
  982. X        if (tabN[i].ch_wididx == -1)
  983. X        continue;
  984. X        if (tabN[i].ch_name[0] && !buffer[g+tabN[i].ch_wididx]) {
  985. X        if (verbose) {
  986. X            printf("Table problem - no width for '%s' (%d)",
  987. X            tabN[i].ch_name, i);
  988. X            printf(", wididx: %d, catidx: %d\n",
  989. X            tabN[i].ch_wididx, tabN[i].ch_catidx);
  990. X        }
  991. X        errcnt++;
  992. X        }
  993. X    }
  994. X    if (verbose)
  995. X        printf("Guess: %d, errcnt %d\n", g, errcnt);
  996. X    if (errcnt)
  997. X        continue;
  998. X    printf("Guess %d\n", g);
  999. X    }
  1000. X}
  1001. END_OF_FILE
  1002.   if test 7283 -ne `wc -c <'utils/dumpft.c'`; then
  1003.     echo shar: \"'utils/dumpft.c'\" unpacked with wrong size!
  1004.   fi
  1005.   # end of 'utils/dumpft.c'
  1006. fi
  1007. if test -f 'utils/fonts/cmbx10.pk.UU' -a "${1}" != "-c" ; then 
  1008.   echo shar: Will not clobber existing file \"'utils/fonts/cmbx10.pk.UU'\"
  1009. else
  1010.   echo shar: Extracting \"'utils/fonts/cmbx10.pk.UU'\" \(7576 characters\)
  1011.   sed "s/^X//" >'utils/fonts/cmbx10.pk.UU' <<'END_OF_FILE'
  1012. Xtable
  1013. X !"#$%&'()*+,-./0123456789:;<=>?
  1014. X@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
  1015. Xbegin 644 utils/fonts/cmbx10.pk
  1016. XM]UD11T9T;U!+(#$N,B!O=71P=70`H```&O(B5@`$)JX`!":NP#5!#>DZ)!\<
  1017. XM_AO1\][B7<]]J=GR%MCR-M8D?5)6U#5]/R=M(I;1U-#6SRMK\M!I/0>"TF3Z
  1018. XM?1#(+D(-%KTB'!S^&]A]N&EG:F9K5N1K96M6:E=H:-:6I7:U9K96Q5Y&QO1K
  1019. XM96ERVTV6P#A##4GP(AL<_1NX<8T#-G=U7%1=%#73,EU#)=4A;5(5UHY]E=8A
  1020. XM;5(EU2)=0D73)5T2=<*7<\T=.(#(,$0.'&TE'QS^&]BMNVEY:VAM!7;09FT5
  1021. XM9M%E]M)5YVTFXD;25?;15FT%=K:&EUVWV*#(-D4,%KT?&QS^&_VW:5=K-VPG
  1022. XM]L-N)E)B9E+19#T?T-%D/1]E+1]E*"1M$_1M$E]M`U;$5J4OW"#(*48+D^4>
  1023. XM&1S^&_VU:55K-6PE]L-&T"]&4F+T92QD//T,9#SC92SE;2_3D,`^1PYW<R8@
  1024. XM'/T;R('-$SIWB&QG731EU$5M4U76-&UR1=@CY6W?:](5U&1M-E7396TF9=)G
  1025. XM71:&QJ=XS1)-*6(PR!=(#F9B)2`<_AO]%-'I1L:/VXZVQD_131"X#4D&^DX2
  1026. XM$!S_&]3LM674P!M*"8+5&10<_QM?TNU+92=D1F/V5C955%5S1:B`R$=+#FP2
  1027. XM)2`<_AO]%[1M$Y;0.FP[:RT&HM%H/29STV8]1E/59$U6-M1B?4D6TX)])T;2
  1028. XM9FT69]!G;0:&QI:VEZ:FIK:6MT_131#('4P+$0T=&!S^&_T\[1;5XFPO1K-&
  1029. XMLE:C5I16=A_:$,A`31%W<BTH'/X;K7V-6T?5>.(A73(5CR)=$B6/(UPC6/)%
  1030. XMHD6.(E6"58\F5B98\G5"=8\H4BA8XBEY6/*EI4^G-]#(4DX.9F(E(!S^&_NZ
  1031. XM2-$HG0*"%\*")[*"-K*"1J*"5I*"5X*"9W*"=V*"AF*"EE*"ET*"IS*"MR*"
  1032. XMQB*"T&$H+0F"T8@M)X+3:"U%CRU42M(TK3)`P#9/#=)X)!T<_1NIU%5=!)2E
  1033. XMM7705DTD5=)3;28O744>=M1A744O;28UTE1M!E705UM:24T%5=2:R"%0#)/E
  1034. XM(1L<_AO8;:AH=FI6:U7D:V]&M5:E9H9]6>IM3]'0P$91#=)X)!TD_1NIU%5=
  1035. XM!)2EM7]=!5724VTF+UU%'G;4;Q744FTF-=)45C955!,C5U(5(5I!%ET&1=2W
  1036. XM'6)QUC4OUJ_7C9;;0\@T4@W,R"0A'/X;U]#:T6AM!J7&M;Y&MJ:UMJ7&A='3
  1037. XMU&==)H71:&T.5I;/:68D:F73=4(=&8+`-U,*..`;%!S]&UA13!,T=B2D(\,4
  1038. XMPQ]-`A72?0NM%]%M)]%]&JTFTETV_1;1,3T#%+,FA",<05A@P!]4#,S((1P<
  1039. XM_AL?W21F9"-V<R*&@A.&A>.6DNTK;3_54,@?50XGSB4@'/X;_1BNU4;3*5TR
  1040. XME=(K70/%L]%G33T=B;#(.E8-Z3HD(1S_&_T9I&U"GVTBI]`[;0+'L]!K+1>B
  1041. XMTO:2U/9RU74]9E+7<SV&,MER+:]A+<XGWO4!#ST@R%I7$P6J,2X<_QO]$]%:
  1042. XM1K;0*&M\*'MK.6MK*FJ**_:8DL=R)G/09R)G+19C)V+1=21E/2921E+39#1T
  1043. XM+4]C)F,M5Q*&$]9A*&$M>8G7BHV/>GVO7%VTT4W//1/0P$)8#>DZ)"$<_QL?
  1044. XMT4QWLM%Y/2=SU&<M5U+7<SV&(]EQ+;C=]]Y]Y]R-NMHB?8)&US1]4V?4*&TR
  1045. XME]$Z?0+'LM!U_&T@R"]9#>DZ)"$<_QO]&:1](Y?1*WP[?"T'HM)X/2>"U'8M
  1046. XM9T/6="V'(]FMJ=R-WI;:_1G`.%H+/I`=%QS]&Q_8)H8TES.F/SID*F4I=2EM
  1047. XM-M-]-M/VTVTW@F:25J)'HD:C-K,VHS:S)Z0FEA_9$,`I80CQPQ<5$O\12;-4
  1048. XMA55E9&5E8W737)AB5E551U174^)85$<11502='1@R"9B"CC@&Q<=_QSXU>A=
  1049. XM52>81':#991?6D3E6E\UI$645H-D$E1S1G#0(&,(+8`5$1+^$6AS4U-5-%4D
  1050. XM921S+E74U*(DDC."4U.'0,`D9`HXX!L7'?X<SXU>A:8E=%=CAE253TI3Y5I4
  1051. XM]*54E6.&=$MG*,`B90AN[183$O\1=Y138X-$DR2C)*GZW^+2326R)+(TDE1C
  1052. XMEU#0&V8%GT@/$AT`')>4,W0U5$5%14537D6?V>U:_%#`-&<),S`8%1O_$6<T
  1053. XM4U0C-%0C,W,B/C1T<W.$5)-3DA>QU_+6T(TGTEU"2JXM!!/0,DM$1TBUR!QH
  1054. XM"CC@&Q@=_QSXUNA=94:5(C2%$61_9U;J6%/[*Y`2:04<<`X+'O\=-&XV9-SX
  1055. XM;J-3K,`;:@6?2`\.)@,=E)XVE`3OCM25$UI*1!4T,T-F4,@L:PFV"!D6'?\<
  1056. XM^-3H74]4E%8X53E4*U,L43T*R[84M26E-95$E46%575E/Z.0R`UL!1QP#@L=
  1057. XM_QSX;MM3V=@@;0]54"@E$O\1A&=F@B-$(TA1%D(61_9V=6ZEA84_LK*PV!AN
  1058. XM"CC@&Q@2_Q&$9H(C2%$61_9U;J6%/[*PT!]O"3,P&!42_Q%WM%1SDU24/TM!
  1059. XMY5M?%+0TE%1T=%2W<,@G<`HXX!L7&O\1@G:T1V=&64595%I$Y5I36D195%E%
  1060. XM9T9U1U)JY5TOO,`I<0FV"!D6&OX19E)T0B-D9E2%185$E3Y5E4251854A6-V
  1061. XM<U>6)=3E71^PV!=R!Y/H%!$2_Q%S4G(3-.)!$U-5-.E9_%#0(','0?L3#A+^
  1062. XM$3<2,E0B@A\X(4J6I+6FF7^6AH(54B(F0,`9=`<GT!,.&O\9;C*_.O2-WH-9
  1063. XMXU0D1!9")V+8%G4*..`;&!+_$?A8;K6%979T=H1"&'8XR")V";8(&182_Q'Z
  1064. XM5S629G-U<H9BGU4K]3+0]1+1C2]M3TUBH,@W=PU)\"(?$O\1^3DW\U97)F56
  1065. XM-U5E*%0A12E3(40J4C%3*F$C0CM1(U$L=4$M#V5M%7721TT_.3C()W@)M@@9
  1066. XM%A+_$?HY-F*54Z4SQ1/1?2;47573?1,5PR6S1:)E@H4_A9#(,GD)M@@9%AK_
  1067. XM$?I7-9)F<W5RAF*?52OU,M!1/042TGTO;4]-;RUCLU*U0K4RQ2+1,BTUTL`I
  1068. XM>@@M@!41$O\1+2)%4R9C)E,F5"5D)5M;:FM5)%8C9B-6,E<B9C)60=,0R!L`
  1069. XM"Q$-'1@<_AO]I6A5:C5K)?:SXD;"[21M'].`L$(!#U50*",<_AO$/3]='WSY
  1070. XMSB%LTB?+,WRB1\DU?()GQRA\4Y?$*GPSM\(L!\$L)\`L-K+$>3Q7@L9W/'=M
  1071. XM%=,_U1UPP#H"#D^@)1X<_1NXUD9-%*2EQ7]=%5734_;38EU5%D)B3.1*3$)B
  1072. XM3-5O%=52;38UTU7UT5=<6DI-%&35JL`R`PSCBB$<'/X;T"W.)-KB;8^-:M7R
  1073. XM)M0C?3\D;2)7T29M`V?/*&LI>O*FDK>"QG/'/Y712!D$#$1`(!L<_AO4XV(F
  1074. XMLE@E7D7%4E@H;C)BU,@1!0YF8B4@'/X;`S[:1L9/T4T0R#XGP(AL<_1O]
  1075. XMTGQC?00XT#2-`T?0-7T"9\)HLGC7?8?8]]A=H]H[*CPI+1*"T3<M(U/2-3TD
  1076. XM0]%CVRW!W1#`(P<.3Z`E'AS]&S;&6*@[:QT%U!='%W4E<J0DUZV/C:[2;5_5
  1077. XM8,`Q"`U)\"(;'/T;7]72XVU;T%&X4V)55&-3]59%'C961O%59%-48U538EA1
  1078. XMO0O6XVTOU4#`+`D.3Z`E'AS]&V_5U>-L=65^<F1D951D5F-C9U-C65)B6T)B
  1079. XM30T]2MGC;5_58-`^"@U)\"(='/X;J0$T=,2TE-1UU5;610$5/D8!%C]0$51M
  1080. XM95U7]-24M+.S8D.S1%*R4A)1L5(B4I)2+YF3^)@@T",P"3,P&!,;_AIGI#1S
  1081. XM<U1T0Y,^))0>M97Q24,Y-$=%-S=#2G;`$S$),S`8$1O]&I+02G:V0ESM97_3
  1082. XMP#(R"3,P&!,;_AI8G&-7-'86=19\^%%)70;]!=!=!=%-$](](](H)BDE*B0;
  1083. XM,](],M0?U1#`,#,),S`8$QO^&F><9%54935U)F4E=3.%T/70312WU$TUTO71
  1084. XM8BEA2,]\=21U-&5LF&#`+C0),S`8%1O_&M(M4]1--=)M%]`A7")<$ULC6B19
  1085. XM)5@F5R=6*%4I5"I4`=Y<6_T0P"LU"3,P&!,;_AHRHET&Q[BI?.,M0B:44W)U
  1086. XM493271XF%(OXN%%)4BE4-E;)=\`T-@DS,!@3&_X:EJJ$8F1D1&4T=32#/TT5
  1087. XMT5-6420T419":#)H0>-97Q25%)0TA#1T5%2*IV#`)S<),S`8$QS]&Q+4_5'4
  1088. XM+],CLC*R0J)2DM/RTRT_/232/2XTT>5=(Z#0,C@),S`8$QO^&F>L8W1"HT*S
  1089. XM([,DHR:#*%,Y0EH2>YN<4QI#221LFJGBM!2C))-%9%RG8,`T.0DS,!@3&_X:
  1090. XM9ZMT5%1T-(0TE!]90>-944AB.&)&$50T(593717]%#.%)70U<T1T4U2*IX#`
  1091. XM0B0),S`8$2']'H\L>+5"(C,T)"(E)"$U(W]2*4(J,C,7$HI\;&QL>I(6(5(E
  1092. XM$T(Y\R1T)%8D(B4C,C0C)#,A1:EM'R?`428.3Z`E(!W^'*3=,RVC4=E%+8-B
  1093. XMUT8M=5+75"V%0=E3':4AW&N67)9=(J;0+%PL>RL2:2HR:"HT9RE%92I&8RI6
  1094. XM<2M7C&=Y(EEH(F:D-<.X>730(3\(L%@7$!W]'$AB9#*$%'KV43=:6TL\/#WR
  1095. XMWD($]+XVM'#0(3X(L%@7$!W]%%2^-K0$_D+3WRT\/$M+5S'U:G04@C-C64#8
  1096. XM#1`%''`."Q+_$?ANU3`8P!81!9](#PX:`Q%OCM25$UI*1!4T,T-F4-`X&0F.
  1097. XM-AD6'?\<A]-3E55T=&XU=55T961U5%@T>&.%<W6#9815A4643E65-3)$120T
  1098. XM120D*#(D.$50T#4:#4GP(A\2_Q%)9X-5%$-55W-%9G0U99-#=93]64@!E&-0
  1099. XM$590$%==64WUE:>'@B9$)%-9AT#`-1L.3Z`E(A+_$7>'E%0T0V.3$W-$EW0D
  1100. XMM9,DM9G[69O:XK712UT5EZ(DEZ(T=!2"5%0T4Y>70,`^'`DS,!@5&O\5U1UA
  1101. XMUBUAMQ&45'1T5'$4-($D)'$T%6(Z84KU%:06HR910Q="0AA#01=%2#=%21%[
  1102. XM'6+6'6'5P%8=$*JE*R<<_AN_W-0B9UTR-I/3(VHM(S:CT21J/1)&LM`E:RT"
  1103. XM5E)"SR9E+4-F4M0G9#U-G3VM,H9#TCAE)B]REE)B8J924G*FPF\K:S4[:D4L
  1104. XM:%+Z79+`8AX2M@4Q*QS\&[`0M&V92FE82VLW3&PF7&PT70;#/VT&@C(UTE@C
  1105. XM(FTE<W;25D?VTM)VTE9';25S=M)8)VTE@E(6T5@E(6T&T3%M!M$C70;1)%QM
  1106. XM`T:VT#5;;$=9:EI&VM`!$M!8'PY/H"4>(/T=`;$!X@$84=1D$<2DI<5UUF31
  1107. XM)%71)3;!-B7!526R51:Q;*%\DGR1C(&<<IQQK&&V%5*U)5'%)C'&-2'55"'4
  1108. XM9M5UQ:2DP11DT4H!`@'A`;"P$R$%F9@/!AW\'!0=CG%#XRST',%!L!,\!9F8
  1109. XM#P8=_!04',%,_C(^=!V!0<`Q(P]54"@A)?T<TN(W/6XS<];C-SUC<X`U$!.S
  1110. XM<];D-SUC<\!5@W/6XS<];C-SUN(W/2#`<B4/55`H(2']'E35)R0M(V-2T$4V
  1111. XM258W$I$V1RHW1RE'1RA(1R@Y1R<Z1R9*1R5,-Q8]`V)3TC4533)!5-9&-TU3
  1112. XM8D'3134=(U-BT#8W'$5'*D9'*C='*3A'*$A')TE')SI')CPW%DPV)CT346/3
  1113. XM)!@M5$#`%2<%''`-!P[]'!0O8=$4$?8?45\4)!70)B@')]`3"RG\'J&1@H."
  1114. XM@H-_-T?S?B1E;H1U?B2/.$CSDY*BDY*QL=@F*0<GT!,+*?T>&QLI.2HI.?.$
  1115. XMCSCB1UZ'1EXF1_-T?S<X*"@X*!D:T"HJ"3,P&!$2_1YSU=.!4U$4,SDC*Q,6
  1116. XM)1$5?W=1$5)A,;(RDS-!%348/5TWT!$K#D^@)1X?_1D!#M/07.T!`]#`%2P%
  1117. XM''`-!P[]!10O8=$4$?8?45\4)!7`#"X%''`-!@;]!10=L4'0*B\),S`8$2G]
  1118. XM'@$2\!`^+3WSWB/>(]\]XCWB/>(]\]XCWB/?/>(]\P$"`1"P$#H%''`-!A+]
  1119. XM$10<P4VD',%!L!@[!1QP#08:_1$4',%-HR4<85]1XD%!04%`>`T]#D^@)1X-
  1120. XM_1"T&5![T;!,0`Y/H"4>'?T<N,<X/"+"*RQ"DL8G+()2AH)!<T*!,E1Q<B)4
  1121. XM=3(?)4A43D185$]4A4(25'5!(E1U,C%S0A0Q0H8V8M$M$M$L9(.GP;BX#%L%
  1122. XM''`-!RG\'LSM9,FX#%T%''`-!RG_'LGM9,S`%6`%''`-!P[^'%%"3Q7Q7Q81
  1123. XM0='Q8D'0$!(),S`8"0C\'!15-S9&551RT!$3"3,P&`H(]AQ$54<V-C548H#8
  1124. XM$10),S`8#`;Z&AD1-3%14W<Z%M@3%0DS,!@-"/L<XAL1&1(G(R4E=U2X"18)
  1125. XM,S`8$0+]&-;@$!<-Z3HD"0?S'#XQL'@\&QCXT!`8""V`%0T(^_]%AJ6?5U*B
  1126. XM',`,(`4<<`T,!``/A$U#2-`47@DS,!@-!_L<8;.5<Q-$-!-S$9$0P`Q?!1QP
  1127. XM#08&_1T4';%!T!5]"3,P&`T)^AT34QXU.4034R)B07$PT`]^"3,P&`\$_!PT
  1128. XM<2PL(70PT!-_"3,P&`\&_!TC4S4U'V-A4U,U,M`E"PJ[N!P?'0`<J3>59C-T
  1129. XMA355=45%A45%A5->186?`<GM6%KZ2U#`'PP*..`;&1T`'*C15BM(.5=7]85U
  1130. XMDXXUT_V7[06%3Z2@T!H-"CC@&QD=`!RLI564=85U?F6%/P&'[5A4^RNP*`X/
  1131. XM55`H)AT`'*A8PE9V*TA8.5=G5_6%A76%DXXUA<3]=^P5A85/I)2@T"$/#U50
  1132. XM*"8=`!RI3*5G592%=85V=7YEA84_`E?M6%A4^RLKT!\B":3X&1$._AP49"]D
  1133. XM8?<W%!%$$?89'U&17QD4*"09%:@)+08B(!`+!/\*T=`?7`FD^!D1#OL<49%"
  1134. XM@D\9%?&17QD6$4010?<W\61B1D'("7L),S`8%P$`"]JH"7P29F`P+P$`"]3P
  1135. XM#VED96YT:69I97(@0TU"6/`58V]D:6YG<V-H96UE(%1E6"!T97AT\`QF;VYT
  1136. X09F%C96)Y=&7T`.H``/7V]O`5
  1137. X`
  1138. Xend
  1139. END_OF_FILE
  1140.   if test 7576 -ne `wc -c <'utils/fonts/cmbx10.pk.UU'`; then
  1141.     echo shar: \"'utils/fonts/cmbx10.pk.UU'\" unpacked with wrong size!
  1142.   fi
  1143.   # end of 'utils/fonts/cmbx10.pk.UU'
  1144. fi
  1145. if test -f 'utils/fonts/cmr10.pk.UU' -a "${1}" != "-c" ; then 
  1146.   echo shar: Will not clobber existing file \"'utils/fonts/cmr10.pk.UU'\"
  1147. else
  1148.   echo shar: Extracting \"'utils/fonts/cmr10.pk.UU'\" \(7517 characters\)
  1149.   sed "s/^X//" >'utils/fonts/cmr10.pk.UU' <<'END_OF_FILE'
  1150. Xtable
  1151. X !"#$%&'()*+,-./0123456789:;<=>?
  1152. X@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
  1153. Xbegin 644 utils/fonts/cmr10.pk
  1154. XM]UD11T9T;U!+(#$N,R!O=71P=70`H```2_%@>0`$)JX`!":NP#)!#``"'QP=
  1155. XM_QS0XBW.)-KB$4V.(336XA5-3Q=-(G71&4T='0*5SQM+*UKQT$DM!73%27S(
  1156. XM,4(+55@=&!S^&]6DA(2C=*1DLVXTM%2S9*1DE'1UC2E)1TI&2T5,->1,3T2T
  1157. XM5*1DE#UEP#I#"XX['AD>_ARV<8-B0G*B(E/01#TC,],S/4(CU2\4UA$]=>?9
  1158. XM/7'Q36$CUA\SU!4](7/0&BL<-RTW<,@S1`PXYB`;'/X;U=!(2TI)3#CTT#=-
  1159. XM$V311?32->=-)/1-(U3114T39-!&30-TPX2SE)-]6=@W10KCD!P8'/X;`89*
  1160. XM1DPF]-%DTE]`$!5&%Q7B1AU%+;U%+>)&'488%$`1'B1`$!7TTE3"9*0@&"#8
  1161. XM*$8*<<H;%AS^&P%U245+)?3!5,+T311&%AXD1AM%*[M%*^-&&^9`%%W9P$%'
  1162. XM#(X[(1P>_ARV<;-B0J*B(H/01STC8],V/4)3U23TUA0]<3Y4VTS3TU0]1$]-
  1163. XM-%/31O/21ST4@\$3HJ$RLV)1T6O($T@,``(?&AS^&\+.M$I(U8[$I$PLR`Q)
  1164. XM!<<=#PP<_QO.W$1,T!I*"#CE%1`=_QL]A<X!1$-4/B5$-$118W%#E8#(1DL,
  1165. XM<<H@'!S^&\:53$A,*DP;2QQ*'021T4@=)''31AU$4=5$/40UTT(1330A)-)!
  1166. XM$TTE5-'T=-!(3$A;24OTI*2TE+6$MCQ;R!U,"@`"&A4<_AO0Q=/M)-3B3!]$
  1167. XMLD2Q5*)4DU1U'7'(/4T.JJTF(1S^&YTI]%TECB$4T!%(\22Q)(XA-)$TCB%$
  1168. XM<42.(5115(XA9#%DCQ=!%TCB&$A(&2E'."E$E27`R$9.#``"'QH<_AN)E%LW
  1169. XM7!@12QCQ)*&!-)&!-8&!1(&/%4<8%D88\711@81!@84Q@90QCQI"&!M!&/'%
  1170. XMCQT$@=$X'2)ST22<%,`[3PQQRB`;'OX<I]4U/1.3L[.3T#<](U321#U#/TU$
  1171. XM(]8QYTUD$]8R]-1#/4-$TD4](W/0.3L[.3T34]5ZR")0"N.0'!<<_AO4I(.$
  1172. XME&2D5+->1+1$LU2D5)1D@XT*ZTTLL,!040QQRB`;)?X<I]4U/1.3L[.3T#<]
  1173. XM(U321#U#/TU$(]8QYTUD$]8R]-1#/4-$8V1343%3<S%1,Y,A81.S$6311#<:
  1174. XMEQU"<=4E+5,S_5C7;90PR#A2"\<>'QP=_AO3TT=-!)2TI*2SKC2TE+.DI*24
  1175. XMM'30S31DT4@]!(3.5)2_24842C842D01QS0=E2#`.%,(XY`7$A[^'%910U(B
  1176. XM,I$2(Z,BPA/"'B/0$4T5T5T)JXR+J=!=%=%-).+17]`A.R(A&A,B)B05=<`@
  1177. XM5`N..QX;'/\;'<(X1S(I2"+QI)$2I*+BM*'M/$V6T]-0R!]5#``"'QH=_AO%
  1178. XME$PW[630&3P:2QLZ'0*AT2@=,T+66L@U5@P``A\<'?\;N8-=%&32)TTAA=`I
  1179. XM]-`;XDL=#TD=%8'2]''352U/11UN)#'8]!'9;:]-SB+0R$A7$''**R@=_QNU
  1180. XMM8-;6D5,3"?B2UL92EH:])$DD;2!)('/1Q1''%841QT.)%%D4=+B0QA#'40A
  1181. XMA1'5]!&D$=9:77XDQ-CB+1*PP$18#``"'QP<_QL;2F:%I*+022T%@=)''352
  1182. XMU$4=9#'742V$$=I-M=M-OUV1)-<376%$U15=,F72&$T1E<*DP<2BQ76G.FS(
  1183. XM,ED,``(?'AP`&\F4712$TAI=`K30'%L=%:'221TU@=1''552UD4=A#'94AVD
  1184. XM$=MMSJ39R<`X6@G''AD4'/X;'6%943M"\K0QM$&E0:11E---)-)=)-+TTDTE
  1185. XMTDD?5*%$L36B-+$TP32R)+,5E1UAP"IA"``"%1(2_A$WHE-T4V1C8G/2\[>$
  1186. XM,V-C4W-2@TXC@S$2=#$B42,11D,@R"EB"..0%Q,=_QQM/I/3,U@Q)"=')CDE
  1187. XM.30Z).4Z,SHD.30Y)4<F(A4G%%;0'V,''',2#A+^$59R0E)$,E0C8C*^4\+#
  1188. XMD2*1,G%20G5`P"ED"..0%Q,=_ARFT^DY4C<E$38G12DT.30J,^4Z-"HT.34I
  1189. XM-B=')"$X4V#0(64''',2#Q+_$66"0F)B0H(C@Q*EH!;CTM.A(J$R@5)2A4#`
  1190. XM&&8$XY`-#QT`'(62,F,T4D1#4EY3BX[2.:3`-F<(``(5$AS_$M$W0Q(D)#,C
  1191. XM-#,4)B?C-C<F*#0Y)"D22QTRU"TZC071,J,BQ>+1(2PC*B4V.(7(&V@(XY`7
  1192. XM%!W_'&U.D]0S63(4-S$6)T<V[#@SDI"0$6D$<<@,"1W_'#)O1BV6;J4SD(`8
  1193. XM:@3CD`T+)0,<@H](+9?IJ#$E="%#,B0D5,@P:PAQRA83'?\<;3Z3TS2$-D8V
  1194. XM*#89-1HT&S,<,CLQ2T(Z,TDT.31(-3@V-S9&-E*2@,@,;`1QR`P)'?\<9NW3
  1195. XM.=@?;0U56"0A$O\18V9I,A4S%3<Q%R(7)TA(-NPY.3.3DY#8%VX(XY`7%!+_
  1196. XM$6-9,A0W,18G1S;L.#.2D-`B;P@``A42$O\19J-#<H)2HC.C(L(>4\,2PB.C
  1197. XM,J)2@G-#IF#8)W`(XY`7$QK_$6-8,20G1R8Y)3DT.B3E.C\SDT.25')C$5)S
  1198. XM)9YCV:#0*7$(<<@6$QK^$611<D(B8G$24H1/.3/E.C0J-#DU*$8G1R0A.%,P
  1199. XM$N8]D-@5<@9$1A`-$O\18C4Q$B3T)#-"3K-Z,-`B<P9/IA`-$O\1-B$R4R&"
  1200. XM'RD1.!%9AI:):4I/E8$2$5(A-C#0&70&..40#!K_&5XQKRDX1K3H.>0U%"44
  1201. XM,Q="V!9U"..0%Q02_Q%E9NPX-C=')T<T(3E38,@@=@AQRA83$O\1A6)(-?.1
  1202. XM?S<9XC4;\S'$$M#S$=+B/4&0R#EW"XX['AL2_Q&"@G)&1C4W-R4W-Q8V$2<7
  1203. XM\U$348-!,E&?,Q,S&C(5(QOS$5,1Q'(1T/-ST2DM(9&`P"QX"''*%A42`!$8
  1204. XM.%1CA&*C8<-!T3(=(Q+335/53373$CT10\%3LF.A@W1E.$G(+'D(<<H6$QK_
  1205. XM$85B2#7SD7\W&>(U&_,QQ!+0\Q'2XCU/'4\:1!I#&T(L(BT4T-`H>@<<<Q(.
  1206. XM$O\1'1-C(G,A<S%D,6-!4Z2CHZ110V$S<21B(W$C@2-C'1#(&P`*``(:%1S^
  1207. XM&]=4A%2B7TL52RXD3![31-1<T(#`1`$-55@C'AW^'-'RWO3<;;$4VA)=D338
  1208. XM%%UQ5-8675%TU!A=,932&ET1M-`<7!T$L=%:'221TU@=1''55AUD7QV$/?$"
  1209. XM\,!&`@QQRB`;'OX<I]4U/1.3L[.3T#<](U321#U#/TU$(]8Q36@QL3CB/0.#
  1210. XM&Q./UD$]8R]-1#/4-$TD4](W/0.3L[.3T34]5Z#`,0,+'',=&AW_',XBVN)-
  1211. XMAM?Q%-8275\334(UT_%4TB5='B%TT.(92^(;21T$@L1TICE<F!H$"JJM'!<<
  1212. XM_AO<XZL=_QHQCBI8\:,0)N,:O<#(#P4,``(?&AS^&]WMQ$I$PL#(008+CCL>
  1213. XM&1S^&]LDT5)=(S72)$TQ1=(D72%4TA5=$678387839]-DMH=H=H=(7'3%AU!
  1214. XM8=,E'4)!U"0=0S'34MH=L<`H!PQQRB`;'?X<-;58ASII(E-40A)S,W.3(X*3
  1215. XM(I&R$]AMA=KM--EM31;`.@@+CCL>&1S^&VT=)M?B35G1,D$Z-$,W-40U-D4S
  1216. XM1D5!Y4=&049%0S9%-35$-S1#.C)!/1G6XDUVTM%0P#()#''*(!L<_AM]'4;9
  1217. XMXDM71E\D9%1>9%1$<U1$?T1#231#.S-"3#)"/1,7U7V>)-EM31;`/`H+CCL>
  1218. XM&1W^')?214LY.#T#5-!$/2,TTD(]0QY$U$$]0R]-)#/2-?/0-SLY\K)14I)2
  1219. XM]AD6$14G)1+BAX'0)#`(``(5$!W^&V2B0G)B7R@C.#+RHA[#H_$J(C@S\H)2
  1220. XM8G)"EE#0$C$(``(5#1S\&V*C=E(SK@%SE4W0+S((``(5$!S^&U624F&#,:(Q
  1221. XMHQ2)>?@Q.3Q/P\\\/#TM+2TM*!0I$RH3&A/2`0$!$=`P,P@``A40'?X;5H)2
  1222. XM;Q@S1D)',D9#-DSSTM+2I@$2`1\P$#WT$XGB>(,ADTE*64,`N-`@``A42
  1223. XM'/\;SRTCT?30$3PA/!([$SHC.A0Y%3@E.!8W%S8G-A@U&30I--7FL[O0+C4(
  1224. XM``(5$!W^&R*"2UIHCE$!$35Q(4)A$6)2<T&3T]XD$ICBA;,AE"&307-B0Y5@
  1225. XMT#<V"``"%1`=_AN$HD)R86)C0F0R=#*"/STM,U4R%"0Q%B-((D@Q.B'D.C\2
  1226. XMHQ.2,H,R@E)B<D*E4,`G-P@``A41'?X;$=/3\=(AP2\<$QL=+QTATBTATO+1
  1227. XM/1\M'C/0Y4T2D-`T.`@``A40'?X;99)"<8%1DD&B+B*B(Y(D<D515Q)XIYAB
  1228. XM-D)6(H0BEK7CPA*Q(J%"@E-1EE#0-SD(``(5$!W^&V2B0G)B4H(S@C*3'SHA
  1229. XMY#HQ*C$X0BA#)A$T)!(U4S_2TS*"-'(T8D-Q87)B0J5PT$8D"``"%1`A_AZ/
  1230. XM'&@C$B4D%!,E%1(6%C847V$V84(3471!AA&8F8F8H161,Y%#$E%']!55%3<5
  1231. XM$A85$A84%!43%B,2&6WQ<,!.)@QQRB`;'_X=@]HB'8\D'6XS0=;S,=<R'8,1
  1232. XMVDB6.TD\*CP:$3L9$CH9%#@9)#@8\F-A@W-!DW0QDX,AHY2DHZ$3E($R@2-Q
  1233. XM0E)#0G6%0-`?/P>..Q0/'?X<1V)C,9,3E^*#PL.RPL+1TMY1!:+/3"?0(3X'
  1234. XMCCL4#QW^%&+/3"!;\=XQTM'2PL.SL\XCAY,2H3)R9T#(#!`$<<@,"1+_$6;M
  1235. XM(SG`%!$$XY`-"QH#$4?M:#$E="%#,B0D5-`U&0@``Q42'?\<=J-#<V-B@EXS
  1236. XM@T-S4W)C4T8DDU*#8G-R8X)?.#3E.3,Y)#(S-#(S)3(R(V-4T#8:"XX['AH2
  1237. XM_A$W=5-3,E(T4Q)R)&2",G22^SHG`51#,!`V/3<]*#PX//.$H1-B(H$S0D-"
  1238. XM5H5`T#8;#''*(!T2_Q%EE8)24E)2<C)R,I(2@B.5DA*SI;.EL!3CL]*STY6A
  1239. XM(I(2H3)R,H%24E-"A95`P#T<"``"%1(:_Q73'3'3+3&6$8-#<G-2@1(S<2,B
  1240. XM<C(3<4;V%6]19D%S$C)R(R%S,A&"4W)S0X$6D=,M,=,=,,!,'0YQRB4B'/\;
  1241. XMG:TA%832$DHM'Q-+'1$TLLXA1,&^(51ATQ9&'3%D4M+6TA=%+2%T8=$81AT?
  1242. XM&$86'B893!8:3!8:2R4J2B5)2$*4UB#`:!X0..8J)1[]'*8!`UUH.$I'.4PF
  1243. XM.ST!4\/0%$P]`C/0/1$DT#T1)-`Y%!(]$Y%DT3D631."9-$W-DT=!DT3<V31
  1244. XM.";TT3D730.14130/2$4T#T1/TP]$42ST"4[/0)CE,*#A*2C76QM@-!3'PQQ
  1245. XMRB`;(/X=`9'74K-3,:.4H[.3TW/1$U/2(T/1,S3!1"/14R/!8Q]+%XH8CY&8
  1246. XM@:CW&T$V'#(U'3)$'$,S'30R+34Q'3<].3LZ23H3-3LE?1`9P!$A!''(#`0>
  1247. XM_!T2'?[!+9(8$A#`$3P$<<@,!![\%!(8$MGL(=\2$+`\(PU56",>)?X<PN(G
  1248. XM+&-CQN(G+&-CQN,G+&-CC0'2XJ)RQC8\;C)RK2'0@V/&XB<L8V/&XB<L8V/&
  1249. XMXB<L(,!O)0U56",>(?X>1-,G(QT38E*S8V.$8G$K8X&2<X&#<X%S@X%RDX%C
  1250. XMDX%BHX%3LG%3PV%2T245/2(Q4]1&)DU#4C'2-24=$E-APU)QLU.!HF.!DV.!
  1251. XMDG.!@W.!<X.!<I.!8Z)Q8[-A8M`E%CT2,7+31.`0)P1QR`P%#/P<9[[0A"(1
  1252. XM$0#0(R@&..40"BK]'I&!@8&"?R?R?R<WXB?K..(H./*?*?*2D:&AH=@C*08X
  1253. XMY1`**OX>&AH:&2GRGRGR@XXBCK/B<G-_)_)_)R@8&!@9T"(J"``"%1`2_AY^
  1254. XM,H%2410R-",B(VBO2H8R(C)#(T$5)1CC)]`/*PQQRB`;'/X7WL+`..S2P.`.
  1255. XM+`1QR`P$#/P#;_<1$2)(X`HN!''(#`0$_`-O]M`N+P@``A40*?X>`0\M/]+3
  1256. XMTM/?+3WRT]\M/?+3TM/?+3WRT]\M/?+3TM/?+3WR`0"P#SH$<<@,!!+\$1(8
  1257. XM$MXA@2&P%3L$<<@,!!K\$1(8$MXA@3XS'R$A(3#`$#T,<<H@&PS^#QW!W@R]
  1258. XMX=P0P%)`#''*(!L=_ARGU2<M$K*QTAD=07'6%1A8%!8T%Q,6-A<2%B@T$A4X
  1259. XM-!$6*34N13DU)BDU$14X-1$6*#02%C9$$Q8T$B,4&%1&'>'>'>+22"ELI[@,
  1260. XM6P1QR`P'*?P>Q.V%PK@,701QR`P'*0`>PNV%Q.`08`1QR`P%#/T<"(B$0A"W
  1261. XMWF#8#A((``(5!@?['/,T,T-24>`.$P@``A4&!_<<''/.<P@`Z`T4"``"%0H$
  1262. XM^QG`V&/P,-@2%0@``A4,!_P<\:."$8$C0SAD0,@)%@@``A4.`?T8T>`/%PP`
  1263. XM`A\(!_4=/$*!@8%"/-`0&`<<<Q(*!_O^,W2$='-C&"#0#2`$<<@,"03_#W)#
  1264. XM0T)PX`]>"``"%0H%^QL,!((1`H!`V`E?!''(#`,$_!S`T!)]"``"%0P'^QPN
  1265. XM(T,30R\E(B4CX`]^"``"%0X$_1L<!/PD/R`XX`Y_"``"%0P$_!Q@;P_P]@;`
  1266. XM(@L)55@8&AT`')9%DU(2,G)E-%-D1$-T4EY3@XV8[2.#F$E`P!T,"..0%Q4=
  1267. XM`!R6T#4J)RDV1S='."CD/1U7[2.#2$C`&0T(XY`7%1T`')FC4Y)D@V1^8X,]
  1268. XM5^TC@TDIL"<.#558(R$=`!RF5L$V$C4J-T<I-U9'.$='.3@HY#D\+2?L,Y.#
  1269. XM23DIL"0/#558(R$=`!RF6:-B$U.3962#=61SA(-^4Y.#/2?L,Y.#23DIX!PB
  1270. XM"``"%0T,_QQ@9X>^/M#0@(0$("("$!$!$!$!`,@)+0555@X+`@`)V>`<7`@`
  1271. XM`A4-#/H<"`B`B`B`A`1`0@(0$+"WQ]X>8&#("7L(``(5%`$`"]>X"7P0``,J
  1272. XM*0$`"]WP#FED96YT:69I97(@0TU2\!5C;V1I;F=S8VAE;64@5&58('1E>'3P
  1273. X5#&9O;G1F86-E8GET9?0`Z@``]?;V
  1274. X`
  1275. Xend
  1276. END_OF_FILE
  1277.   if test 7517 -ne `wc -c <'utils/fonts/cmr10.pk.UU'`; then
  1278.     echo shar: \"'utils/fonts/cmr10.pk.UU'\" unpacked with wrong size!
  1279.   fi
  1280.   # end of 'utils/fonts/cmr10.pk.UU'
  1281. fi
  1282. echo shar: End of archive 12 \(of 19\).
  1283. cp /dev/null ark12isdone
  1284. MISSING=""
  1285. for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ; do
  1286.     if test ! -f ark${I}isdone ; then
  1287.     MISSING="${MISSING} ${I}"
  1288.     fi
  1289. done
  1290. if test "${MISSING}" = "" ; then
  1291.     echo You have unpacked all 19 archives.
  1292.     echo "Read the README to get started with psroff installation"
  1293.     rm -f ark[1-9]isdone ark[1-9][0-9]isdone
  1294. else
  1295.     echo You still must unpack the following archives:
  1296.     echo "        " ${MISSING}
  1297. fi
  1298. exit 0
  1299.  
  1300. exit 0 # Just in case...
  1301.